检查字典列表是否有包含指定值的字典

我正在尝试检查字典列表是否包含具有指定值的键,如果它确实包含具有此值的字典我想以该字典为目标,如果不,我想创建字典


这是我的字典列表的样子


my_list = [

   {"name": "home", "content": "home"}, {"name": "contact", "content": "contact"}

]

我想检查是否my_list有一个带有键"name"和值的字典作为示例"events",它不存在所以我需要将它添加到我的列表中,如果有,我想修改字典键"content"


if {"name": "events"} in my_list:

   list_found = my_list[index_of_the_dictonary]

else:

   my_list.append({

      "name": "events"

      "content": []

   })


宝慕林4294392
浏览 199回答 2
2回答

呼如林

您可以添加else到for循环来解决问题:my_list = [   {"name": "home", "content": "home"},   {"name": "contact", "content": "contact"}]for x in my_list:    if x.get('name') == 'events':        print('Dictionary Found')        breakelse:    my_list.append({'name': 'events', 'content': []})print(my_list)# [{'name': 'home', 'content': 'home'}, {'name': 'contact', 'content': 'contact'}, {'name': 'events', 'content': []}]一个else以for仅当循环执行for循环而不正常执行到其完成即break。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python