objectif
Répéter une valeur sans l’allouer N fois, utile pour zip/map.
code minimal
import itertools
pairs = list(zip(range(3), itertools.repeat("a")))
print(pairs == [(0,"a"),(1,"a"),(2,"a")]) # attendu: True
utilisation
import itertools
scaled = list(map(lambda x_y: x_y[0]*x_y[1], zip([1,2,3], itertools.repeat(10))))
print(scaled == [10,20,30])
variante(s) utile(s)
import itertools
print(next(itertools.repeat(5)) == 5)
notes
- repeat(value, times) émet value times fois; sans times, c’est infini.
- Combinez avec starmap/zip pour paramétrer des pipelines.