python -c "print float(7/3)"
печатает 2,0 на моем компьютере. Что я делаю не так?Почему python -c "print float (7/3)" print out 2.0
Это то, что я использую:
Python 2.7.4 (default, Apr 19 2013, 18:28:01)
[GCC 4.7.3] on linux2
python -c "print float(7/3)"
печатает 2,0 на моем компьютере. Что я делаю не так?Почему python -c "print float (7/3)" print out 2.0
Это то, что я использую:
Python 2.7.4 (default, Apr 19 2013, 18:28:01)
[GCC 4.7.3] on linux2
7/3
является целочисленное деление на Python 2 и, таким образом, возвращает 2
(int
). Затем вы конвертируете это в float
, что дает 2.0
.
Возможно, вам понравилось float(7)/3
, 7/float(3)
, 7.0/3
или 7/3.0
.
Также обратите внимание, что вы можете сделать from __future__ import division
так, чтобы деление было плавающей точкой по умолчанию (тогда вы используете //
для целочисленного деления).
Если вы хотите использовать python -c для калькулятора командной строки, я предлагаю вам проверить pythonpy (https://github.com/russell91/pythonpy). Вы можете сделать это как: py 7/3 => 2.3333333 – RussellStewart