times argument of itertools.repeat() accepts a negative number and doesn't accept None (original) (raw)

Bug report

Bug description:

times argument of itertools.repeat() accepts a negative number as shown below:

from itertools import repeat # ↓↓↓↓ v = repeat(object='Hello', times=-100)

So, error should be raised like below:

ValueError: times must be 0 <= x

And, times argument doesn't accept None as shown below so None should be accepted:

from itertools import repeat

v = repeat(object='Hello', times=None)

TypeError: 'NoneType' object cannot be interpreted as an integer

CPython versions tested on:

3.13

Operating systems tested on:

Windows