¿Por qué la iteración a través de dos diccionarios en python producir resultados extraños?

0

Pregunta

Yo soy la iteración a través de las claves de un diccionario, la búsqueda de la misma clave en un segundo diccionario, a continuación, tratando de producir el primer valor de la lista asociada con la clave en el diccionario segundo. Cuando miro directamente a la segunda diccionario funciona bien:

Código:

for data in hud_data.get('veh_1'):
     print(data[0])

Devuelve: 17.3245

Este es correcta. Pero cuando trato de ejecutar a través de todas las claves de hud_data haciendo referencia a las teclas de otro diccionario (UAV_data), puedo obtener un resultado extraño:

Código:

for a_key in UAV_dict.keys():
    # print(a_key)
    for data in hud_data.get(a_key):
        print(data[0])
        break

Esto debe producir exactamente lo mismo. La primera clave UAV_dict es 'veh_1', así que cuando el segundo bucle for se ejecuta, simplemente debe devolver la misma cosa, 17.3245. En vez de ello devuelve todos los valores para cada una de las teclas:

Regreso: 17.3245 19.3003 22.2483 29.8077 35.86

¿Por qué todos los valores para cada una de las teclas que aparecen en la salida? ¿Cómo debo volver a escribir el código para que sólo se produce el primer resultado?

1

Mejor respuesta

0

La interrupción de la declaración sólo se detiene el interior de bucle. El otro lazo en UAV_dict.las teclas() no se ve afectado

2021-11-24 02:23:19

Ok, eso es bastante tonto. Gracias. Yo estaba corriendo en un problema en otra parte del código, y pensé que este era el problema. Obviamente, esta parte está bien entonces.
Michael Wish

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................