es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Manera pythonica de iterar a través de un archivo json

Tengo un archivo .json que tiene una estructura similar a esta:

{
  "cars": [
    {
    "FIAT": [
      {"model_id": 153},
      {"model_id": 194}
    ]
    },
    {
    "AUDI": [
      {"model_id": 261}
    ]
    },
    {
    "BMW": [
      {"model_id": 264}
    ]
    }
  ]
}

Mi objetivo final es obtener lo siguiente:

      {"model_id": 153},
      {"model_id": 194},
      {"model_id": 261},
      {"model_id": 264}

Actualmente, mi código que me da este resultado es el siguiente:

for cars in dir['cars']:
    for brand in cars:
        for model in cars[brand]:
            print(model)

Mi pregunta es, ¿hay una mejor manera de acceder a estos detalles? Sé que itertools.product se usa para reemplazar los bucles for anidados, pero ¿se puede aplicar en este escenario?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Como la estructura actual de los datos contiene diccionarios anidados, un bucle for es el método adecuado para acceder a los datos requeridos. No es posible utilizar itertools.product para este escenario ya que se utiliza para calcular el producto cartesiano de iterables de entrada, lo cual no es necesario aquí. Por lo tanto, el código actual es la manera más eficiente y apropiada para recuperar los datos deseados.

Comments are closed.