Отдел в Python 2.7. и 3.3

Как я могу разделить два числа в Python 2.7 и получить результат с десятичными знаками?

Я не понимаю, почему есть разница:

в Python 3:

>>> 20/15 1.3333333333333333 

в Python 2:

 >>> 20/15 1 

Разве это не по модулю?

4 Solutions collect form web for “Отдел в Python 2.7. и 3.3”

В python 2.7 оператор / является целым делением, если входы являются целыми числами.

Если вы хотите использовать float-разделение (что я всегда предпочитаю), просто используйте этот специальный импорт:

 from __future__ import division 

Смотрите здесь:

 >>> 3 / 2 1 >>> from __future__ import division >>> 3 / 2 1.5 >>> 

Целочисленное деление достигается с использованием // и по модулю с использованием %

 >>> 3 % 2 1 >>> 3 // 1 3 >>> 

РЕДАКТИРОВАТЬ

Как прокомментировал user2357112 , этот импорт необходимо выполнить перед любым другим обычным импортом.

В Python 3, / является плавающим делением

В Python 2, / является целым делением (при условии ввода int )

Как в 2, так и в 3, // является целым делением

(Чтобы получить float-разделение в Python 2, требуется, чтобы любой из операндов был float, либо как 20. либо float(20) )

В Python 2.x убедитесь, что в float есть хотя бы один операнд вашего деления. Это можно сделать несколькими способами:

 20. / 15 20 / float(15) 

«/» – целочисленное деление в python 2, поэтому оно будет округлено до целого числа. Если вы хотите вернуть десятичное число, просто измените тип одного из входов на float:

float(20)/15 #1.33333333

  • Форматировать строку времени в Python 3.3
  • Использование True / False в качестве ключей - как / почему это работает?
  • Почему объект .__ new__ с аргументами отлично работает в Python 2.x, а не в Python 3.3+?
  • Учет списка, заменяющий элементы, которые не являются float или int
  • Что такое PasteDeploy и нужно ли мне его изучать, если яйца на Python считаются пропавшими?
  • Запись в CSV с Python добавляет пустые строки
  • Массовая анимация Matplotlib
  • Замените содержание словаря на другой словарь в функции - Python
  • Python подсчитывает элементы в значении dict, являющемся списком
  • Какую команду использовать вместо urllib.request.urlretrieve?
  • Запись файла .CSV в Python, который работает как для Python 2.7+, так и для Python 3.3+ в Windows
  • Python - лучший язык программирования в мире.