Saltar al contenido

Cómo crear una tupla con un bucle en python

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)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *