Я чувствую, что этот вопрос должен был быть задан раньше, но я могу быть слишком неопытным в Python, чтобы либо (1) найти ответ, либо (2) понять ответ.Как получить/получить значения внутри списка в словаре?
У меня есть словарь, который содержит списки. Каждый ключ имеет три значения, связанные с ним внутри списка. Поскольку значения указаны в списке, я предполагаю, что они индексируются. Я знаю, что словарные ключи являются неупорядоченными и обычно значениями являются. Однако, поскольку значения находятся в списке, их нужно упорядочить, правильно?
Я хочу написать цикл for, который сохранит первое значение внутри каждой клавиши в новом списке. Или, альтернативно, я просто хочу знать, как получить доступ к значениям в словаре! Я попробовал следующее: имя = словарь списков
for key, values in name.iteritems():
xCoord = key[1]
print xCoord
Однако я получаю ошибку: «IndexError: индекс строки из диапазона.» Каким будет способ вызова/получения первого значения, связанного с каждым ключом? Спасибо!
EDIT: Я создал словарь со следующим.
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
У меня есть файл CSV, который я читал с помощью DictReader. Затем я использовал цикл for, чтобы брать только определенные строки из словаря чтения и хранить их в ранее открытом словаре. – JackOfTales