Я пишу скрипт для анализа данных в бейсбольной игре. В моем сценарии я работаю с матрицей, где значение каждого элемента является словарем. Например:Добавление списка словарей в матрице
{'Date':gameDate},{'Home Team':homeTeam},{'Away Team':awayTeam}
Таким образом, парсер создает список игр. Если я хочу, чтобы напечатать игры, где Уайт Сокс команда гостей, я пишу следующее:
for event in gameMatrix:
if event['Away Team'] == "Chicago White Sox":
print event.items()
Выход есть, например:
[('Date', '2013-05-17 02:05'), ('Away Team', 'Chicago White Sox'), ('Home Team', 'LAA Angels')]
Но позволяет сказать, что я хочу добавить еще один словарь к конкретным типам игр, снова позволяет использовать Уайт Сокс игры в качестве примера: (в псевдокоде)
for event in gameMatrix:
if event['Away Team'] == "Chicago White Sox":
append {'New Value': "New value"}
print event.items()
Таким образом, ожидаемый результат будет
{'Date':gameDate},{'Home Team':homeTeam},{'Away Team':awayTeam}{'New Value':"New Value"}
Но все, что я пробовал, в конечном итоге дает мне какие-то ошибки (т. Объект 'dict' не имеет атрибута 'append', индексы списка должны быть целыми числами, keyerror и т. д.)
Итак, как добавить новый словарь в определенную строку игры Matrix?
Почему у вас есть (список) отдельных словарей, а не один словарь с несколькими ключами? –
@JonClements Я думаю, вы неправильно интерпретируете свои неправильно описанные структуры? – pydsigner
@JonClements Clements Я вставляю их в базу данных MySQL –