Lo que quiero lograr:pitón convertir una lista en una lista de tuplas
[a, b, c, d] -> [ (a, x), (b, x), (c, x), (d, x) ]
Lo que he pensado hasta ahora:
done = []
for i in [a, b, c, d]:
done.append((i, x))
¿Hay una manera más Pythonic de lograr esto?
enfoque interesante. Pensé en usar zip() con [x] * len ([a, b, c, d]), pero no sabía sobre itertools. –
>>> x = 'apple' >>> y = [a, b, c, d] >>> zip (y, [x] * len (y)) Eso también funciona, estaba pensando de formas rápidas de hacerlo utilizando el conjunto directamente sin guardarlo en un varible. – jamylak
Acabo de leer [esta publicación del blog sobre 'repeat'] (http://rhodesmill.org/brandon/2012/counting-without-counting/), es muy rápido. Supongo que uno o ambos son más rápidos que los otros métodos. El segundo es muy inteligente. – agf