A veces, mientras trabajamos con listas de Python, podemos tener un problema en el que necesitamos convertir una lista a tupla. Este tipo de problema se ha tratado antes. Pero a veces, tenemos su variación en la que necesitamos asignar el índice del elemento junto con el elemento como una tupla. Analicemos ciertas formas en que se puede realizar esta tarea.
Método n. ° 1:list() + enumerate()
se puede usar la combinación de las funciones anteriores para realizar esta tarea en particular. En esto, simplemente pasamos la lista enumerada a list(), que devuelve la tupla con el primer elemento como índice y el segundo como elemento de lista en ese índice.
# Python3 code to demonstrate working of # Convert list to indexed tuple # Using list() + enumerate() # initializing list test_list = [4, 5, 8, 9, 10] # printing list print("The original list : " + str(test_list)) # Convert list to indexed tuple # Using list() + enumerate() res = list(enumerate(test_list)) # Printing result print("List after conversion to tuple list : " + str(res))
The original list : [4, 5, 8, 9, 10] List after conversion to tuple list : [(0, 4), (1, 5), (2, 8), (3, 9), (4, 10)]
Método #2: Usarzip() + range()
La combinación de las funciones anteriores también se puede usar para realizar esta tarea en particular. En esto, solo usamos la capacidad de zip()
convertir a tupla y range()
obtener el índice del elemento hasta la longitud. Esto empareja el índice con el valor en forma de lista de tuplas.
# Python3 code to demonstrate working of # Convert list to indexed tuple # Using zip() + range() # initializing list test_list = [4, 5, 8, 9, 10] # printing list print("The original list : " + str(test_list)) # Convert list to indexed tuple # Using zip() + range() res = list(zip(range(len(test_list)), test_list)) # Printing result print("List after conversion to tuple list : " + str(res))
The original list : [4, 5, 8, 9, 10] List after conversion to tuple list : [(0, 4), (1, 5), (2, 8), (3, 9), (4, 10)]
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