Python Glossary English

Python 3.14+Числа и математикафункция

complex.from_number()

комплексные числа

Классметод: строит комплексное число из числового аргумента (делегирует __complex__, затем __float__, затем __index__). В отличие от complex(), строку не принимает. Python 3.14+.

Синтаксис

classmethod complex.from_number(x)

Метод появился только в 3.14 — на более старых интерпретаторах, включая многие проверяющие системы, обращение к нему упадёт с AttributeError, так что для переносимости остаётся обычный complex(x). Смысл from_number — строгость: ровно один числовой аргумент, а на строку он отвечает TypeError, тогда как complex('1+2j') молча разберёт текст, что удобно при вводе и опасно, когда вы ждали именно число.

Примеры

print(complex.from_number(3))  # → (3+0j)
print(complex.from_number(2.5))  # → (2.5+0j)
print(complex.from_number(1+2j))  # → (1+2j)
print(complex.from_number(True))  # → (1+0j)
try: complex.from_number('1+2j')  # строка не число
except TypeError as e: print(type(e).__name__)  # → TypeError

См. также

Частые ошибки

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