Python Glossary English

все Python 3numbersпонятие

numbers

модуль

Абстрактная иерархия числовых типов: Number, Complex, Real, Rational, Integral — для проверок isinstance.

Синтаксис

import numbers

numbers нужен, когда функция принимает «любое целое» или «любое вещественное», а не конкретно int или float: isinstance(x, numbers.Integral) пропустит и int, и чужие целые типы. Сами классы абстрактные, экземпляры из них не создают. Ловушки: bool — тоже Integral, а Decimal не считается Real, хотя Fraction — Rational.

Примеры

import numbers
from decimal import Decimal
from fractions import Fraction
print(isinstance(True, numbers.Integral))  # → True
print(isinstance(2.5, numbers.Real), isinstance(Decimal('2.5'), numbers.Real))  # → True False
print(isinstance(Fraction(1, 3), numbers.Rational))  # → True

См. также

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