반응형
Python 2 및 Python 3의 정수 분할
파이썬 2.7에서 두 개의 숫자를 나누고 소수로 결과를 얻으려면 어떻게 해야 합니까?
왜 차이가 있는지 이해할 수 없습니다.
Python 3에서:
>>> 20/15
1.3333333333333333
Python 2에서:
>>> 20/15
1
이거 모듈로 아니에요?
Python 2.7에서는/
연산자는 입력이 정수인 경우 정수 나눗셈입니다.
플로트 분할(내가 항상 선호하는 항목)을 원하는 경우 다음 특수 가져오기를 사용하십시오.
from __future__ import division
여기에서 확인:
>>> 7 / 2
3
>>> from __future__ import division
>>> 7 / 2
3.5
>>>
정수 나눗셈은 다음을 사용하여 이루어집니다.//
그리고 모듈로를 사용합니다.%
:
>>> 7 % 2
1
>>> 7 // 2
3
>>>
논평한 바와 같이user2357112
이 가져오기는 다른 일반 가져오기 전에 수행되어야 합니다.
파이썬 3에서,/
is float 나눗셈
파이썬 2에서,/
는 정수 나눗셈입니다.int
입력)
2번과 3번 모두에서//
는 정수 나눗셈입니다.
(Python 2에서 float division을 얻으려면 피연산자 중 하나가 float이어야 합니다.20.
또는float(20)
)
Python 2.x에서는 부서의 피연산자가 하나 이상 있어야 합니다.float
다음과 같은 여러 가지 방법으로 이를 달성할 수 있습니다.
20. / 15
20 / float(15)
Python 2에서는 정수 나눗셈이므로 정수로 반올림합니다.소수점을 반환하려면 부동할 입력 중 하나의 유형을 변경하면 됩니다.
float(20)/15 #1.33333333
언급URL : https://stackoverflow.com/questions/21316968/integer-division-in-python-2-and-python-3
반응형
'source' 카테고리의 다른 글
Excel의 수식에서 셀 번호가 증가하지 않도록 방지 (0) | 2023.05.22 |
---|---|
TestFlight에서 규정 준수 상태 (0) | 2023.05.22 |
Bash 함수에서 반환 및 종료 간의 차이 (0) | 2023.05.17 |
SourceKit 서비스가 CPU를 사용하고 X코드를 그라인딩하여 중지 (0) | 2023.05.17 |
.NETIL .maxstack 지시어는 어떻게 작동합니까? (0) | 2023.05.17 |