Python 3.15+mathфункция
math.fmin()
сравнение
Меньшее из двух float, где NaN считается пропуском: fmin(nan, 1.0) даёт 1.0. Пара к math.fmax.
Синтаксис
math.fmin(x, y)
min() с NaN зависит от порядка аргументов, потому что сравнения с NaN всегда ложны; fmin возвращает число, если хотя бы один аргумент — число, и NaN, только если оба NaN. Удобно при агрегации измерений с пропусками: functools.reduce(math.fmin, values) не «заражается» одним NaN. Знак нуля в результате fmin(0.0, -0.0) не гарантирован.
Примеры
import math, functools
values = [float('nan'), 3.5, 1.25, 2.0]
print(functools.reduce(math.fmin, values)) # → 1.25
print(min(values)) # → nan — NaN первым, и все сравнения с ним ложны
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности