file.txtсписки в словарь питона
Harry Moon, Meteor \n roger gim, astronaut \n john banks, westpac \n john banks, ASB
Код:
FILE=file.txt
filename=open(FILE,"rt")
fileread=filename.readlines()
fileread.sort()
for i in fileread:
dict={}
dict[i.split(',')[0]]=i.split(',')[1]
print dict
При том, что я был в состоянии получить следующее:
{'Harry Moon': ' Meteor\n'}
{'john banks': ' ASB'}
{'john banks': ' westpac\n'}
{'roger gim': ' astronaut\n'}
Однако , я хочу это:
{ 'Harry Moon': ' Meteor'
, 'john banks': ' ASB'
, 'john banks': ' westpac'
, 'roger gim': 'astronaut' }
Вы не можете получить то, что вы хотите, потому что ваш пример имеет два 'ключи джон banks', и что Безразлично Не работай. Будет что-то вроде '' john banks ': [' ASB ',' westpac '] 'вместо этого, т. Е. Использовать список в качестве значения? – DSM
О, но он должен работать, потому что меня попросили превратить файл со многими дублирующими ключами с разными значениями в словарь. Итак, я надеялся разделить ключи и значения, узнав разделитель, в данном случае «,» и планируя превратить этот разреженный список в dict, чтобы я мог вызвать любой ключ, чтобы получить их значение, и даже если у них есть дубликаты, n дубликатов ключ не должен показывать, просто значение. – rendy
тип 'd = {'john banks': 'ASB', 'john banks': 'westpac'}' на консоли Python. Затем 'print d'. – DSM