0
我覺得這個問題以前應該問過,但我可能對Python太缺乏經驗,無論是(1)找到答案還是(2)理解答案。如何訪問/檢索字典內列表中的值?
我有一個包含列表的字典。每個鍵在列表中有三個與其相關的值。由於這些值在列表中,我假設這意味着它們被編入索引。我知道字典鍵是無序的,通常值也是。但是,由於這些值在列表中,因此應該對它們進行排序,對嗎?
我想寫一個for循環,它將每個鍵中的第一個值存儲到一個新列表中。或者,或者,我只想知道如何訪問字典中的值! 我試過如下: 名=詞典列出的
for key, values in name.iteritems():
xCoord = key[1]
print xCoord
但是,我得到的錯誤:「IndexError:超出範圍字符串索引。」調用/檢索與每個鍵關聯的第一個值的方式是什麼?謝謝!
編輯:我創建了以下字典。
inputCSV = r"G:\REDIRECT\GRP\Test\Workspace\GRPNOV16A.csv"
name = {}
with open((inputCSV),'rb') as offenseFile:
read = csv.DictReader(offenseFile)
for row in read:
if row['Defendant'] not in name:
name[row['Defendant']] = []
name[row['Defendant']].append((row['X - Offense'],row['Y - Offense'],row['GRP Status']))
offenseFile.close
編輯2:對於未來誰是缺乏經驗,需要回答一個類似的問題的人。上面的字典代碼是在字典內的列表中創建一個元組。因此,要訪問我不得不這樣做的元組:
for key, values in name.iteritems():
xCoord = key[0][1]
print xCoord
當我嘗試時,我仍然得到相同的錯誤。 – JackOfTales
適合我。你如何設置你的字典? – manonthemat
我有一個用DictReader讀取的CSV文件。然後,我使用for循環從讀取的字典中僅取出特定的行,並將它們存儲到先前爲空的字典中。 – JackOfTales