codes
countries_list = [
{"Country": "Angola", "Continent": "Africa", "State": "Luanda"},
{"Country": "Angola", "Continent": "Africa", "State": "Benguela"},
{"Country": "South Africa", "Continent": "Africa", "State": "Eastern Cape"},
{"Country": "South Africa", "Continent": "Africa", "State": "Free State"},
{"Country": "Portugal", "Continent": "Europe", "State": "Lisbon"},
{"Country": "Portugal", "Continent": "Europe", "State": "Porto"},
{"Country": "Spain", "Continent": "Europe", "State": "Madrid"},
{"Country": "Spain", "Continent": "Europe", "State": "Barcelona"}
# Add more countries, states, and continents as needed
]
countries = {}
# Sort the list by continent, country, and state
sorted_countries_list = sorted(countries_list, key=lambda x: (x["Continent"], x["Country"], x["State"]))
for item in sorted_countries_list:
continent = item["Continent"]
country = item["Country"]
state = item["State"]
if continent not in countries:
countries[continent] = {}
if country not in countries[continent]:
countries[continent][country] = []
if state not in countries[continent][country][0]["States"]:
countries[continent][country][0]["States"].append(state)
# Print the resulting dictionary
print(countries)