Proyecto JSON - Consulta de Localidades del Mundo Origen del JSON El JSON original fue encontrado en la siguiente página:
🔗 https://ceweb.br/guias/dados-abertos/es/capitulo-36/ Se trata de una guía sobre datos abiertos que utiliza un JSON de ejemplo para ilustrar su estructura. Aunque el propósito original del JSON era didáctico, su estructura anidada lo hace ideal para practicar el recorrido y consulta de datos en Python.
Modificaciones realizadas sobre el JSON original El JSON original fue modificado en varios aspectos para adaptarlo mejor a los objetivos de la práctica:
Corrección de claves con espacios: el JSON original contenía claves como "localidade 1" con espacios, lo que dificulta el acceso en Python. Se han eliminado todos los espacios en los nombres de las claves. Traducción completa al español: todas las claves y valores del JSON estaban en portugués. Se han traducido al español para facilitar su comprensión ("pais", "continente", "capital", "ciudades_importantes", etc.). Reestructuración de los niveles de profundidad: se ha reorganizado la jerarquía del JSON para que sea más coherente y clara, agrupando la información bajo una clave "info" que contiene el continente y el país. Uso correcto de arrays: se han añadido y reorganizado los arrays donde corresponde, como en "idiomas", "ciudades_importantes" y "barrios", para reflejar mejor la naturaleza de esos datos. Adición del campo población: se ha añadido el campo "poblacion" tanto a las capitales como a las ciudades importantes, dato que no existía en el JSON original. Este campo es necesario para la función 5.
El JSON final contiene 14 países repartidos en 5 continentes: Europa, Asia, América del Norte, América del Sur y África.
Estructura del JSON Cada entrada del array "localidades" sigue esta estructura:
localidades └── info ├── continente └── pais ├── nombre ├── idiomas (array) ├── moneda │ ├── nombre │ └── simbolo └── capital ├── nombre ├── poblacion └── ciudades_importantes (array) ├── nombre ├── poblacion └── barrios (array)
Funciones del programa
Función 1 — Listar continentes Recorre el JSON y muestra por pantalla todos los continentes que aparecen en el archivo, sin repeticiones. Útil para tener una visión general de los datos disponibles.
Función 2 — Contar países por continente Para cada continente presente en el JSON, cuenta cuántos países tiene registrados y muestra el resultado. Permite ver de un vistazo qué continentes tienen más representación en el dataset.
Función 3 — Países y ciudades de un continente Solicita al usuario que introduzca por teclado el nombre de un continente. A continuación muestra todos los países que pertenecen a ese continente junto con sus ciudades importantes. Si el continente introducido no existe en el JSON, se informa al usuario.
Función 4 — Buscar país y continente por ciudad Solicita al usuario que introduzca el nombre de una ciudad importante. El programa busca esa ciudad dentro del JSON y devuelve el país y el continente al que pertenece. Permite localizar rápidamente de dónde es una ciudad sin conocer su país de antemano.
Función 5 — Población total de capitales por continente Suma la población de todas las capitales agrupándolas por continente y muestra los resultados ordenados de mayor a menor. Esto permite comparar el peso demográfico de las capitales entre continentes de forma visual.
Requisitos
Python 3.x Módulo json (incluido en la biblioteca estándar de Python, no requiere instalación)
Uso python proyecto_json.py
Al ejecutar el programa se mostrará un menú que permite seleccionar cualquiera de las cinco funciones descritas anteriormente.