Python Glossary English

Python 3.4+operatorфункция

operator.length_hint

последовательности

Оценка длины объекта: точная (len) или предполагаемая через __length_hint__ (для итераторов); второй аргумент — значение по умолчанию.

Синтаксис

operator.length_hint(obj, default=0)

Это оценка, а не обещание: итератор может выдать больше или меньше. Генератор длины не сообщает вовсе, и length_hint вернёт значение по умолчанию — 0, если не задано иное. Нужна в основном авторам коллекций, чтобы заранее выделить память; в обычном коде для точной длины есть len, а для итератора — list(it).

Примеры

import operator
print(operator.length_hint([1, 2, 3]))   # → 3
it = iter([1, 2, 3])
print(operator.length_hint(it))  # → 3
print(next(it))  # → 1
print(operator.length_hint(it))  # → 2
print(operator.length_hint((x for x in range(5)), 10))  # → 10

См. также

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