Tengo una lista que se parece a:
[('A', 1), ('B', 2), ('C', 3)]
Quiero convertirlo en un diccionario que se vea así:
{'A': 1, 'B': 2, 'C': 3}
¿Cuál es la mejor manera de hacer esto?
EDITAR: Mi lista de tuplas es en realidad más como:
[(A, 12937012397), (BERA, 2034927830), (CE, 2349057340)]
python
list
dictionary
Fred Wilson
fuente
fuente

A,B(oBERA) yC(oCE) son en realidad? GraciasRespuestas:
Esa es tu pregunta real .
La respuesta es que los elementos de su lista no son lo que usted piensa que son. Si escribe
myList[0], encontrará que el primer elemento de su lista no es una tupla de dos, por ejemplo('A', 1), sino un iterable de 1916 de longitud.Una vez que en realidad tiene una lista en la forma que se indique en su pregunta original (
myList = [('A',1),('B',2),...]), todo lo que tiene que hacer esdict(myList).fuente
[(1,2), (1,3)], ¡{1:3}golpearía tus llaves y perdería información! Un dict es una relación de uno a * con el tiempo de inserción / eliminación de O (1). La lista es una lista.fuente
l=[('A',1), ('B',2), ('C',3), ('A', 2)]dará como resultado'A': 1que no sea el resultado deseado.¿Has probado esto?
fuente
dict([string1, string2, string3, string4])l=[('A',1), ('B',2), ('C',3), ('A', 2)]resultará en tener el'A': 1que puede no ser el resultado deseado.Aquí hay una manera de manejar duplicados "claves" de tupla:
fuente
Otra forma de usar las comprensiones del diccionario,
fuente
Si Tuple no tiene repeticiones de teclas, es simple.
Si la tupla tiene repeticiones clave.
fuente
fuente