我有一个嵌套字典,看起来像这样:
{'Div 4 A Herrar': {'0': {'awayScore': '0',
'awayTeam': 'Floda BoIF',
'events': [],
'homeScore': '0',
'homeTeam': 'SKIF Semberijaaaah',
'tempTime': '10:00',
'time': 'FT'},
'1': {'awayScore': '0',
'awayTeam': 'Kode IF',
'events': [{'eventID': '3215',
'eventScore': '1-0',
'eventTime': 'HT',
'eventType': 'Goal-timocin',
'name': 'timocin',
'selectedTeam': 'homeTeam'},
{'eventID': '2312',
'eventScore': '2-0',
'eventTime': 'HT',
'eventType': 'Goal-timocin',
'name': 'timocin',
'selectedTeam': 'homeTeam'}],
'homeScore': '2',
'homeTeam': 'Partille IF FK',
'tempTime': '11:00',
'time': 'FT'},
'2': {'awayScore': '0',
'awayTeam': 'Romelanda UF',
'events': [],
'homeScore': '0',
'homeTeam': 'IK Kongah\\u00e4lla',
'tempTime': '12:00',
'time': 'FT'}}}
我想做的是删除事件列表中的特定事件。我事先知道的是前两个键的含义:
"Div 4 A Herrar" and the integer number that represents a dictionary item
对于需要删除的事件,我还有eventID。你知道吗
例如,为了让您更清楚,让我们假设我想要删除一个EventID3215的事件。然后我就可以删除这些信息:
"Div 4 A Herrar", 1, 3215'
如果有什么不清楚,请一定要问,我会更新我的问题,以更具体。你知道吗
编辑1
我只能这样想:
for event in dict["Div 4 A Herrar"][1]["events"]:
if(event["eventID"] == "3215"):
# this is where i got stuck since i had no idea how to proceed from here.
只需使用列表理解从
events
列表中过滤事件,如上面的函数所示。关键是它通过迭代
dicts[key][id]["events"]
创建一个新列表,并且仅当event
的eventID
与传递给函数的event
不同时,它才包含当前的event
字典。你知道吗相关问题 更多 >
编程相关推荐