Nuestro team redactor ha estado largas horas investigando para darle resolución a tus búsquedas, te brindamos la soluciones por esto nuestro deseo es resultarte de gran apoyo.
Solución:
Puede declararlo sin tener que usar un bucle.
a = tuple((i,)*3 for i in range(1, 10))
Use una coma adicional en sus tuplas y simplemente únase:
a = ((1,1,1),)
for i in range(2,10):
a = a + ((i,i,i),)
Editar: Adaptando el comentario de juanpa.arrivillaga, si quieres seguir con un bucle, esta es la solución correcta:
a = [(1,1,1)]
for i in range (2,10):
a.append((i,i,i))
a = tuple(a)
itertools.repeat
también se puede utilizar aquí:
>>> from itertools import repeat
>>> [tuple(repeat(i, 3)) for i in range(1, 10)]
[(1, 1, 1), (2, 2, 2), (3, 3, 3), (4, 4, 4), (5, 5, 5), (6, 6, 6), (7, 7, 7), (8, 8, 8), (9, 9, 9)]
Si desea que el resultado final sea una tupla de tuplas en lugar de una lista de tuplas, puede envolver tuple
otra vez:
>>> tuple(tuple(repeat(i, 3)) for i in range(1, 10))
((1, 1, 1), (2, 2, 2), (3, 3, 3), (4, 4, 4), (5, 5, 5), (6, 6, 6), (7, 7, 7), (8, 8, 8), (9, 9, 9))
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)