Let math.nextafter() compute multiple steps at a time. · Issue #94906 · python/cpython (original) (raw)
Sometimes math.nextafter()
needs to be applied multiple times in succession.
x = nextafter(nextafter( nextafter(x, inf), inf), inf) # Three steps up
It would be nice if the function supported this directly:
x = nextafter(x, inf, n=3)
The implementation would just be a for-loop:
def newnextafter(x, y, /, *, n=1):
'Return the floating-point value n steps after x towards y.'
for i in range(n):
x = nextafter(x, y)
return x
The formal paramater can be just n
or the longer but more descriptive steps
.