2016-04-10 3 views
0

У меня есть текстовый файл, как это:Создание словаря из текстового файла:

matt=Lives in oakland 
drey=lives in San Francisco 

как я могу сделать словарь как этот

{matt:Lives in oakland,drey:lives in San Francisco} 

Я использовал этот код:

d = {} 
with open('hints.txt', 'r') as f: 
    for line in f:   
     name, residence = line.strip().split('=') 
     d[name] = residence 

Это сообщение об ошибке:

ValueError: not enough values to unpack (expected 2, got 1) 
+1

Можете ли вы показать вашу попытку кодирования на этом и объясните, что в настоящее время не работает для вас? – idjaw

+0

Вы видели [configparser] (https://docs.python.org/2/library/configparser.html)? – zondo

+2

Кроме того, ваш ожидаемый результат не является допустимой структурой данных Python. Вы имеете в виду: '{'matt': 'Lives in oakland', 'drey': 'живет в Сан-Франциско'}'? – schwobaseggl

ответ

1

Loop через линии, разделить их на =, и построить dict по пути:

d = {} 
with open('file.txt', 'r') as f: 
    for line in f:   
     name, residence = line.strip().split('=') 
     d[name] = residence 
2

Split на '=', а затем отправить его в dict():

with open('in.txt') as f: 
    d = dict(line.strip().split('=') for line in f) 
Смежные вопросы