Python | Repetición de elementos en la lista

A veces necesitamos agregar un valor duplicado en la lista para varias utilidades diferentes. Este tipo de aplicación a veces se requiere en la programación día a día. Analicemos ciertas formas en las que agregamos un clon de un número a su siguiente posición. 
Método #1: Uso de la comprensión de listas En este método, solo iteramos el ciclo dos veces para cada valor y lo agregamos a la nueva lista deseada. Esta es solo una alternativa abreviada al método ingenuo. 
 

Python3

# Python3 code to demonstrate
# to perform element duplication
# using list comprehension
 
# initializing list 
test_list = [4, 5, 6, 3, 9]
 
# printing original list
print ("The original list is : " + str(test_list))
 
# using list comprehension
# to perform element duplication
res = [i for i in test_list for x in (0, 1)]
 
# printing result
print ("The list after element duplication " +  str(res))

Producción :

The original list is : [4, 5, 6, 3, 9]
The list after element duplication [4, 4, 5, 5, 6, 6, 3, 3, 9, 9]

  Método #2: Usando reduce() + add También podemos usar la función reduce para actuar la función para realizar la suma de un par de números similares simultáneamente en la lista. 
 

Python3

# Python3 code to demonstrate
# to perform element duplication
# using reduce() + add
from operator import add
 
# initializing list 
test_list = [4, 5, 6, 3, 9]
 
# printing original list
print ("The original list is : " + str(test_list))
 
# using reduce() + add
# to perform element duplication
res = list(reduce(add, [(i, i) for i in test_list]))
 
# printing result
print ("The list after element duplication " +  str(res))

Producción :

The original list is : [4, 5, 6, 3, 9]
The list after element duplication [4, 4, 5, 5, 6, 6, 3, 3, 9, 9]

  Método #3: Usar la función itertools.chain().from_iterable() from_iterable también se puede usar para realizar esta tarea de agregar un duplicado. Simplemente hace el par de cada elemento iterado y lo inserta sucesivamente. 
 

Python3

# Python3 code to demonstrate
# to perform element duplication
# using itertools.chain.from_iterable()
import itertools
 
# initializing list 
test_list = [4, 5, 6, 3, 9]
 
# printing original list
print ("The original list is : " + str(test_list))
 
# using itertools.chain.from_iterable()
# to perform element duplication
res = list(itertools.chain.from_iterable([i, i] for i in test_list))
 
# printing result
print ("The list after element duplication " +  str(res))

Producción :

The original list is : [4, 5, 6, 3, 9]
The list after element duplication [4, 4, 5, 5, 6, 6, 3, 3, 9, 9]

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 *