Python | Tuplas incrementales de elementos N

A veces, mientras trabajamos con datos, podemos tener un problema en el que necesitamos recopilar datos que tienen la forma de una secuencia de tupla de elemento creciente con cada tupla que contiene el elemento N veces. Analicemos ciertas formas en que se puede realizar esta tarea.

Método n.º 1: usar la expresión del generador +tuple()
La combinación de las funciones anteriores se puede usar para realizar esta tarea. En esto, necesitamos iterar a través de N usando la expresión del generador y la construcción de tupla usando tupla().

# Python3 code to demonstrate working of
# N element incremental tuples
# Using generator expression + tuple
  
# initialize N 
N = 3 
  
# printing N
print("Number of times to repeat : " + str(N))
  
# N element incremental tuples
# Using generator expression + tuple
res = tuple((ele, ) * N for ele in range(1, 6))
  
# printing result
print("Tuple sequence : " + str(res))
Producción :

Number of times to repeat : 3
Tuple sequence : ((1, 1, 1), (2, 2, 2), (3, 3, 3), (4, 4, 4), (5, 5, 5))

Método n.º 2: Uso repeat()de la comprensión de listas +
Esta tarea también se puede realizar mediante una combinación de las funciones anteriores. En esto, solemos repeat()repetir elementos N veces. Y la iteración se maneja mediante la comprensión de listas.

# Python3 code to demonstrate working of
# N element incremental tuples
# Using generator expression + tuple
from itertools import repeat
  
# initialize N 
N = 3 
  
# printing N
print("Number of times to repeat : " + str(N))
  
# N element incremental tuples
# Using generator expression + tuple
res = tuple(tuple(repeat(ele, N)) for ele in range(1, 6))
  
# printing result
print("Tuple sequence : " + str(res))
Producción :

Number of times to repeat : 3
Tuple sequence : ((1, 1, 1), (2, 2, 2), (3, 3, 3), (4, 4, 4), (5, 5, 5))

Publicación traducida automáticamente

Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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