Оператор деления в Python: примеры с описанием

Главная » Числа, даты и время Python

0

Python поддерживает два оператора деления: / и //. На самом деле за этим стоит целая история. В первых выпусках Python был только один оператор деления (/). Однако его работа была неоднозначной. Для целых чисел он раньше возвращал целочисленное значение, тогда как для чисел с плавающей запятой он возвращал значения с плавающей запятой. В Python не было оператора истинного деления.

Чтобы исправить это – Python 2.2 представил новый оператор деления (//) и позволил разработчикам переносить свои приложения, чтобы использовать его везде, где им нужно целочисленное деление. Это изменение было выполнено в соответствии с PEP-238. Наконец, в Python 3 оператор деления (/) начал работать, как оператор истинного деления.

Давайте рассмотрим несколько простых фрагментов кода, чтобы понять операторы деления в Python.

Операторы деления в Python 2

$ python2.7
Python 2.7.10 (default, Aug 17 2018, 19:45:58) 
[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.0.42)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 9/2
4
>>> -9/2
-5
>>> 9.0/2
4.5
>>> -9.0/2
-4.5
>>> 9//2
4
>>> -9//2
-5
>>> 9.0//2
4.0
>>> -9.0//2
-5.0
>>> 

Обратите внимание: если вы используете Python 2.1 или более раннюю версию, // работать не будет.

Операторы деления Python 3

$ python3.7 Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 26 2018, 23:26:24) [Clang 6.0 (clang-600.0.57)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> 9/2 4.5 >>> -9/2 -4. 5 >>> 9.0/2 4.5 >>> -9.0/2 -4.5 >>> 9//2 4 >>> -9//2 -5 >>> 9.0//2 4.0 >>> -9.0//2 -5.0 >>>

В таблице ниже показаны результаты и пояснения для лучшего понимания.

9/2
44.5Для целых чисел Python 2 всегда возвращает int и возвращает минимальное значение. В то время как Python 3 возвращает значение с плавающей запятой.
-9/2-5-4,5Поскольку Python 2 возвращает значение пола, он возвращает -5.
9,0 / 24.54.5С числами с плавающей запятой и Python 2, и Python 3 возвращают значение с плавающей запятой, и их поведение одинаково.
-9,0 / 2-4,5-4,5То же, что и выше.
9 // 244Оператор разделения этажей работает одинаково как в Python 2, так и в Python 3.
-9 // 2-5-5
9.0 // 24.04.0
-9,0 // 2-5,0-5,0

 

Рейтинг

( 1 оценка, среднее 5 из 5 )

Васильев А.Н. / автор статьи

Помогаю в изучении Питона на примерах. Автор практических задач с детальным разбором их решений.

Комментарии0 Поделиться:

Загрузка …

Математические вычисления в Python 3