Python 3의 sys.maxint란 무엇입니까?
최대 정수를 어떻게 나타내는지 알아보는 중인데"sys.maxint"
하지만 Python 3에서는 내가 그것을 부르면 다음과 같습니다.
AttributeError: module 'object' has no attribute 'maxint'
정수 값에 대한 제한이 없어졌기 때문에 sys.maxint 상수가 삭제되었습니다.단, sys.max size는 실제 목록 또는 문자열 인덱스보다 큰 정수로 사용할 수 있습니다.이는 구현의 "자연적인" 정수 크기에 부합하며 일반적으로 동일한 플랫폼 상의 이전 릴리스의 sys.maxint와 동일합니다(같은 빌드 옵션을 가정).
http://docs.python.org/3.1/whatsnew/3.0.html#integers
다른 사람들이 지적했듯이 파이썬 3의int
최대 사이즈는 없지만, 다른 어떤 것보다 더 높은 사이즈가 필요한 경우int
그러면 Infinity에 대해 float 값을 사용할 수 있습니다. 이 값을 사용하여 얻을 수 있습니다.float("inf")
.
주의: Ely의 코멘트에 의하면, 이것은 코드의 효율성에 영향을 주는 경우가 있기 때문에, 최적인 솔루션이 아닐 수 있습니다.
다른 모든 번호보다 큰 번호를 찾고 있는 경우:
방법 1:
float('inf')
방법 2:.
import sys
max = sys.maxsize
다른 모든 번호보다 작은 번호를 찾고 있는 경우:
방법 1:
float('-inf')
방법 2:.
import sys
min = -sys.maxsize - 1
메서드 1은 Python2와 Python3 모두에서 동작합니다.메서드 2는 Python3에서 동작합니다.Python2에서는 Method 2를 사용해 본 적이 없습니다.
Python 3 ints에는 최대값이 없습니다.
Python과 같은 방법으로 컴파일 했을 때 C에서 int의 최대 크기를 결정하는 것이 목적이라면 구조 모듈을 사용하여 다음을 확인할 수 있습니다.
>>> import struct
>>> platform_c_maxint = 2 ** (struct.Struct('i').size * 8 - 1) - 1
Python 3 int 객체의 내부 구현에 대한 자세한 내용은 다음을 참조하십시오.sys.int_info
비트/디지트 및 디지트사이즈 상세에 대해 설명합니다.일반 프로그램은 이 문제에 신경 쓰지 않습니다.
Python 3.0은 Python 3의 int가 임의의 길이이기 때문에 sys.maxint를 더 이상 가지고 있지 않습니다.sys.maxint 대신 sys.maxsize; 양의 크기_t Py_ssize_t의 최대 크기를 가집니다.
또 다른 방법은
import math
... math.inf ...
언급URL : https://stackoverflow.com/questions/13795758/what-is-sys-maxint-in-python-3
'programing' 카테고리의 다른 글
Java 유형 삭제의 이점은 무엇입니까? (0) | 2022.11.10 |
---|---|
PHP에서 추상 클래스는 무엇입니까? (0) | 2022.11.10 |
C에서 *ptr += 1과 *ptr++ 사이의 차이 (0) | 2022.11.10 |
Vuex 상태 boolen 속성이 정의되지 않음으로 표시됨 (0) | 2022.11.10 |
자바에서는 같은 캐치블록에서 두 개의 예외를 잡을 수 있습니까? (0) | 2022.11.10 |