Programa de Python para convertir una lista de strings con un delimitador en una lista de tupla

Dada una lista que contiene strings con un delimitador particular. La tarea es eliminar el delimitador y convertir la string a la lista de tupla.

Ejemplos:

Entrada : test_list = [“1-2”, “3-4-8-9”], K = “-” 
Salida : [(1, 2), (3, 4, 8, 9)] 
Explicación : después de dividir , 1-2 => (1, 2).
 

Entrada : test_list = [“1*2”, “3*4*8*9”], K = “*” 
Salida : [(1, 2), (3, 4, 8, 9)] 
Explicación : después de dividir , 1*2 => (1, 2). 

Método n. ° 1: usar la comprensión de listas + dividir()

En esto, primero, cada string se divide usando split() con K como argumento, luego esto se extiende a todas las strings usando la comprensión de listas .

Python3

# Python3 code to demonstrate working of
# Convert K delim Strings to Integer Tuple List
# Using list comprehension + split()
  
# initializing list
test_list = ["1-2", "3-4-8-9", "4-10-4"]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K
K = "-"
  
# conversion using split and list comprehension
# int() is used for conversion
res = [tuple(int(ele) for ele in sub.split(K)) for sub in test_list]
  
# printing result
print("The converted tuple list : " + str(res))
Producción

The original list is : ['1-2', '3-4-8-9', '4-10-4']
The converted tuple list : [(1, 2), (3, 4, 8, 9), (4, 10, 4)]

Método #2: Usando map() + split() + comprensión de lista

En este, la tarea de extensión de la lógica de extensión integral se realiza mediante map() y luego se utiliza la comprensión de listas para realizar la tarea de construcción de la lista.

Python3

# Python3 code to demonstrate working of
# Convert K delim Strings to Integer Tuple List
# Using map() + split() + list comprehension
  
# initializing list
test_list = ["1-2", "3-4-8-9", "4-10-4"]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K
K = "-"
  
# extension logic using map()
# int() is used for conversion
res = [tuple(map(int, sub.split(K))) for sub in test_list]
  
# printing result
print("The converted tuple list : " + str(res))
Producción

The original list is : ['1-2', '3-4-8-9', '4-10-4']
The converted tuple list : [(1, 2), (3, 4, 8, 9), (4, 10, 4)]

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 *