objectif
Déplier les tuples en arguments d’appel automatiquement.
code minimal
from itertools import starmap
pairs = [(2,3), (3,4)]
prods = list(starmap(lambda x,y: x*y, pairs))
print(prods == [6, 12]) # attendu: True
utilisation
from itertools import starmap
pts = [(0,0), (1,1), (2,3)]
dist2 = list(starmap(lambda x,y: x*x + y*y, pts))
print(dist2[2] == 13)
variante(s) utile(s)
from itertools import starmap
print(len(list(starmap(lambda *args: args, []))) == 0)
notes
- Évite d’écrire des lambdas qui indexent les tuples dans map.
- Combinez avec zip pour transformer plusieurs séquences.