tengo tres listas, la primera es una lista de nombres, el segundo es una lista de los diccionarios, y el tercero es una lista de datos. Cada posición en una lista corresponde con las mismas posiciones en las otras listas. Lista_1 [0] tiene datos correspondientes en lista_2 [0] y List_3 [0], etc. Me gustaría convertir estas tres listas en un diccionario dentro de un diccionario, con los valores de lista_1 siendo las claves primarias. ¿Cómo hago esto mientras mantengo todo en orden?Diccionarios Concatenación
6
A
Respuesta
13
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [7,8,9]
>>> dict(zip(a, zip(b, c)))
{1: (4, 7), 2: (5, 8), 3: (6, 9)}
Véase el documentation para obtener más información sobre zip
.
Como lionbest señala más adelante, es posible que desee mirar a itertools.izip()
si los datos de entrada es grande. izip
hace esencialmente lo mismo que zip
, pero crea iteradores en lugar de las listas. De esta manera, no crea grandes listas temporales antes de crear el diccionario.
1
Python 3:
combined = {name:dict(data1=List_2[i], data2=List_3[i]) for i, name in enumerate(List_1)}
Python 2.5:
combined = {}
for i, name in enumerate(List_1):
combined[name] = dict(data1=List_2[i], data2=List_3[i])
0
si el orden de estas cosas las cosas, no se debe usar un diccionario. por definición, están desordenados. puede utilizar uno de los many ordered_dictionary implementations flotando alrededor, o esperar a que Python 2.7 o 3.1 que incluirá una implementación diccionario ordenado en el módulo de colecciones.
Cuestiones relacionadas
- 1. Diccionarios diccionarios
- 2. Concatenación Tupla
- 3. lotes Concatenación
- 4. maravilloso Concatenación
- 5. ¿Comprende la lista Python para diccionarios en los diccionarios?
- 6. C# a Java - ¿Diccionarios?
- 7. Combinar diccionarios de recursos
- 8. C# diccionarios ValueOrNull/ValueorDefault
- 9. fusionando varios diccionarios python
- 10. Serializar diccionarios con JavaScriptSerializer
- 11. python diccionario de diccionarios
- 12. Json.NET: deserializar diccionarios anidados
- 13. "Agregar" Diccionarios en Python?
- 14. Trabajar con diccionarios inmutables
- 15. C# diccionarios intersectar
- 16. ¿Hay diccionarios en php?
- 17. Diccionarios y divertido Lambdas
- 18. Invertir diccionarios en Python
- 19. C# Merging 2 diccionarios
- 20. Operador de concatenación + o,
- 21. Concatenación con StringBuilder
- 22. concatenación de tuplas
- 23. columnas Concatenación Int
- 24. python cadena concatenación confusión
- 25. ASP.NET MVC Razor concatenación
- 26. Concatenación en smarty
- 27. Concatenación de cadenas PHP
- 28. const char * concatenación
- 29. Hash de combinación/concatenación
- 30. concatenación de cadenas
Si a, b, c será enorme, recomiendo IZIP del módulo itertools. – Arpegius
@lionbest: Buen punto, lo he agregado. – balpha