Python Glossary English

Python 3.0+Арифметика и операторыпонятие

/ деление

арифметика

Оператор деления. Для int и float всегда возвращает float, даже при делении двух целых. Деление на ноль вызывает ZeroDivisionError.

Синтаксис

a / b -> float

Для int и float результат всегда float (complex, Decimal и Fraction делятся в свой тип), а у float всего 53 бита мантиссы: на больших целых младшие разряды тихо теряются, а совсем крупные числа вроде 10**400 / 2 падают с OverflowError — там, где нужен точный целый ответ, бери // и не превращай float обратно в int. Деление на 0.0 тоже даёт ZeroDivisionError, а не inf, как в C или NumPy.

Примеры

print(10 / 2)  # → 5.0 (всегда float)
print(9 / 3)  # → 3.0
print(7 / 2)  # → 3.5
print(1 / 3)  # → 0.3333333333333333
print(type(6 / 2))  # → <class 'float'>
try:
    print(1 / 0)
except ZeroDivisionError:
    print("Деление на ноль!")  # → Деление на ноль!

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности