#arrays #dictionary #append
Вопрос:
то, как мне нужно прочитать в файле:
countries = [
{
"name": "Venezuela",
"capital": "Caracas"
}, {
"name": "Bolivia",
"capital": "Sucre"
}, {
"name": "Argentina",
"capital": "Buenos Aires"
}, {
"name": "Chile",
"capital": "Santiago"
}, {
"name": "Colombia",
"capital": "Bogota"
}, {
"name": "Guyana",
"capital": "Georgetown"
}, {
"name": "French Guiana",
"capital": "Cayenne"
}, {
"name": "Paraguay",
"capital": "Asuncion"
}, {
"name": "Peru",
"capital": "Lima"
}, {
"name": "Ecuador",
"capital": "Quito"
}, {
"name": "Suriname",
"capital": "Paramibo"
}, {
"name": "Uruguay",
"capital": "Montevideo"
}, {
"name": "Brazil",
"capital": "Brasilia"
}]
как настраивается текстовый файл:
Venezuela,Caracas
Bolivia,Sucre
Argentina,Buenos Aires
Chile,Santiago
Colombia,Bogota
Guyana,Georgetown
French Guiana,Cayenne
Paraguay,Asuncion
Peru,Lima
Ecuador,Quito
Suriname,Paramibo
Uruguay,Montevideo
Brazil,Brasilia
текстовый файл:
текущий код, который работает без чтения в файле
Ответ №1:
Чтобы прочитать файл и создать словарь, вы можете использовать следующий пример:
countries = []
with open("SAcapitals.txt", "r") as f_in:
for line in map(str.strip, f_in):
# skip empty lines:
if not line:
continue
name, capital = line.split(",")
countries.append(dict(name=name, capital=capital))
print(countries)
С принтами:
[
{"name": "Venezuela", "capital": "Caracas"},
{"name": "Bolivia", "capital": "Sucre"},
{"name": "Argentina", "capital": "Buenos Aires"},
{"name": "Chile", "capital": "Santiago"},
{"name": "Colombia", "capital": "Bogota"},
{"name": "Guyana", "capital": "Georgetown"},
{"name": "French Guiana", "capital": "Cayenne"},
{"name": "Paraguay", "capital": "Asuncion"},
{"name": "Peru", "capital": "Lima"},
{"name": "Ecuador", "capital": "Quito"},
{"name": "Suriname", "capital": "Paramibo"},
{"name": "Uruguay", "capital": "Montevideo"},
{"name": "Brazil", "capital": "Brasilia"},
]
Комментарии:
1. это идеально. Я пробовал делать это многими другими способами. Большое вам спасибо!