source

Python 2 및 Python 3의 정수 분할

lovecheck 2023. 5. 22. 21:09
반응형

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

반응형