Python | Convertir lista de tuplas en dígitos

Dada una lista de tuplas, la tarea es convertirla en una lista de todos los dígitos que existen en los elementos de la lista. Analicemos ciertas formas en que se realiza esta tarea. Método #1: Usar re La forma más concisa y legible de convertir una lista de tuplas en una lista de todos los dígitos que existen en los elementos de la lista es usando re

Python3

# Python code to convert list of tuples into
# list of all digits which exists
# in elements of list.
 
# Importing
import re
 
# Input list initialization
lst = [(11, 100), (22, 200), (33, 300), (44, 400), (88, 800)]
 
# Using re
temp = re.sub(r'[\[\]\(\), ]', '', str(lst))
 
# Using set
Output = [int(i) for i in set(temp)]
 
# Printing output
print("Initial List is :", lst)
print("Output list is :", Output)
Producción:

La lista inicial es: [(11, 100), (22, 200), (33, 300), (44, 400), (88, 800)] La lista de salida es: [1, 4, 8, 0, 3, 2]

  Método #2: Usar itertools.chain() y lambda() Esta es otra forma más de realizar esta tarea en particular usando lambda(). 

Python3

# Python code to convert list of tuples into
# list of all digits which exists
# in elements of list.
 
# Importing
from itertools import chain
 
# Input list initialization
lst = [(11, 100), (22, 200), (33, 300), (44, 400), (88, 800)]
 
# using lambda
temp = map(lambda x: str(x), chain.from_iterable(lst))
 
# Output list initialization
Output = set()
 
# Adding element in Output
for x in temp:
    for elem in x:
        Output.add(elem)
 
# Printing output
print("Initial List is :", lst)
print("Output list is :", Output)
Producción:

La lista inicial es: [(11, 100), (22, 200), (33, 300), (44, 400), (88, 800)] La lista de salida es: {‘8’, ‘4’, ‘0 ‘, ‘2’, ‘1’, ‘3’}

Método #3: Usando los métodos list(), map(), join() y set()

Inicialmente, convertimos la lista que contiene tuplas de enteros en una lista que contiene tuplas de strings. Más tarde, concatenaremos la string (obtenida al unir strings de tuplas) en una string vacía. Y luego usaremos set para eliminar duplicados. Finalmente, convertirlos a tipo entero e imprimir la salida lista

Python3

# Python code to convert list of tuples into
# list of all digits which exists
# in elements of list.
 
 
# Input list initialization
lst = [(11, 100), (22, 200), (33, 300), (44, 400), (88, 800)]
 
p=""
for i in lst:
    x=list(map(str,i))
    p+="".join(x)
p=list(map(int,set(p)))
 
# Printing output
print("Initial List is :", lst)
print("Output list is :", p)
Producción

Initial List is : [(11, 100), (22, 200), (33, 300), (44, 400), (88, 800)]
Output list is : [0, 4, 2, 3, 8, 1]

Publicación traducida automáticamente

Artículo escrito por everythingispossible 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 *