我試圖將文件的內容存儲到字典中,並且我想在調用其鍵時返回一個值。文件的每一行都有兩個用逗號分隔的項目(首字母縮略詞和相應的短語),並且有585行。我想將逗號左側的縮略詞存儲到鍵中,並將逗號右側的短語存儲爲值。下面是我有:讀取文件並將內容存儲到字典中 - Python
def read_file(filename):
infile = open(filename, 'r')
for line in infile:
line = line.strip() #remove newline character at end of each line
phrase = line.split(',')
newDict = {'phrase[0]':'phrase[1]'}
infile.close()
這裏就是我得到的,當我嘗試查找值:
>>> read_file('acronyms.csv')
>>> acronyms=read_file('acronyms.csv')
>>> acronyms['ABT']
Traceback (most recent call last):
File "<pyshell#65>", line 1, in <module>
acronyms['ABT']
TypeError: 'NoneType' object is not subscriptable
>>>
如果我添加return newDict
到函數體的最後,它顯然只是當我撥打read_file('acronyms.csv')
時,返回{'phrase[0]':'phrase[1]'}
。我也試過{phrase[0]:phrase[1]}
(沒有單引號),但是返回相同的錯誤。謝謝你的幫助。
我加入了蟒蛇標記你的問題,使得Python程序員就可以找到它。 – timgeb