检查 Python 字典列表中是否已存在值?

2023-11-23

我有一个 Python 字典列表,如下所示:

a = [
    {'main_color': 'red', 'second_color':'blue'},
    {'main_color': 'yellow', 'second_color':'green'},
    {'main_color': 'yellow', 'second_color':'blue'},
]

我想检查列表中是否已存在具有特定键/值的字典,如下所示:

// is a dict with 'main_color'='red' in the list already?
// if not: add item

这是一种方法:

if not any(d['main_color'] == 'red' for d in a):
    # does not exist

括号中的部分是生成器表达式,返回True对于每个具有您要查找的键值对的字典,否则False.


如果钥匙也可能丢失,上面的代码可以给你一个KeyError。您可以使用以下方法修复此问题get并提供默认值。如果您不提供default value, None被返回。

if not any(d.get('main_color', default_value) == 'red' for d in a):
    # does not exist
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查 Python 字典列表中是否已存在值? 的相关文章

随机推荐

  • 没有删除语句的 MySQL 复制

    我一直在寻找一种方法来防止MySQL删除语句被从站处理 我正在从事数据仓库项目 我想在将数据复制到从站后从生产服务器中删除数据 完成这件事的最佳方法是什么 谢谢 做这件事有很多种方法 Run SET SQL LOG BIN 0 在执行删除之
  • 如何交错流(带背压)

    假设我有两个可能无限的流 s1 a b c d e s2 1 2 3 4 5 6 7 我想要merge流 然后使用缓慢的异步操作映射合并流 例如 在 Bacon 中 fromPromise and flatMapConcat 我可以将它们与
  • 服务器端多次TIME_WAIT的代价是多少?

    假设有一个客户端与服务器建立了大量短期连接 如果客户端关闭连接 会出现很多端口TIME WAIT在客户端声明 由于客户端耗尽了本地端口 因此无法快速尝试新的连接 如果服务器关闭连接 我会看到很多TIME WAIT在服务器端 然而 这有什么坏
  • SQL 在 WHERE 子句中合并

    我正在尝试在我拥有的存储过程中实现可选参数 但遇到了问题 这是一个简化的查询来说明该问题 SET ANSI NULLS OFF DECLARE MiddleName VARCHAR 20 SET MiddleName NULL SELECT
  • NumberFormat 解析不够严格

    我有一个JFormattedTextField with a NumberFormat与 Locale US 因此小数点分隔符是点 分组分隔符是逗号 现在 我在此文本字段中键入字符串 1 23 并将焦点移至另一个组件 我希望该字符串会消失
  • Hibernate 升级:StatisticsService()

    我正在将 hibernate 从 3 6 升级到 4 3 5 更换后 jar文件和一些已弃用的包 类以及基本数据类型我仍然遇到一些错误StatisticsService 在org hibernate jmx包裹 错误如下 1 error p
  • Ruby on Rails:在布局中的特定位置生成特定视图

    如果我有一个标记 然后我的所有视图都会呈现在布局中的同一位置 我可以有不同的吗不同视图的标签 那我该怎么办呢 谢谢 调查ActionView Helpers CaptureHelper 您可以在您的视图中执行以下操作 这将在 content
  • 复制 QTableView 的一部分

    因此 我有一个问题与我在这里看到的另一个问题非常密切相关 但当我尝试在那里提出我的问题时 我没有得到答复 我希望通过提出这个新问题 有人可以帮助我 基本上我只想复制我创建的表格的一部分 以便我可以将其粘贴到 Excel 文件中 这是我所拥有
  • Python 中的 SSLSocket 密码/密码

    我最近一直在考虑为我的一个应用程序制作 iOS 推送通知服务 它有一个 Python 2 7 后端 所以我想用 Python 而不是 PHP 或其他任何东西 来完成它 我有发送通知并且设备接收通知的代码 但是每次运行该代码时 它都会要求我手
  • 如何将 Javascript 日期时间转换为 C# 日期时间?

    我一直在读到 如果你想从 JavaScript 日期转换为 C 日期 你应该使用getTime 然后将该结果添加到 C DateTime 假设我有这样的 JavaScript 时间 Date Tue Jul 12 2011 16 00 00
  • 如何为iPhone创建一个黑色渐变的UIButton?

    我想在 iOS 中创建一个具有普通黑色渐变主题的 UIButton 我查看了文档 似乎不知道如何执行此操作 当我创建按钮时 我得到一个没有颜色的圆角矩形按钮 这是我的代码 UIButton leagueTeamButton UIButton
  • C++ 当从函数返回结构体时,汇编中实际发生了什么?

    我试图弄清楚如果从函数中按值返回结构 而不是返回指向该结构的指针 那么在 C 中实际会发生什么 如果函数只能返回适合寄存器的值 那么当按值发送结构时 如何进行通信 我在某处读到过 我尝试在 Godbolt 上测试它 看看它在做什么 但我不了
  • SSL_connect 返回=1 errno=0 状态=错误:证书验证失败(无法获取本地颁发者证书)

    我正在尝试从我的应用程序发布到网络服务 但经常收到以下错误 SSL connect returned 1 errno 0 state error certificate verify failed unable to get local i
  • 如何使用 doc 任务生成 scaladoc 后运行 bash 脚本?

    我有一个简短的 Bash 脚本 它对我的 Scaladoc 注释进行查找和替换 以便生成第三方库的外部文档的链接 我希望每次使用以下命令生成 Scaladocs 时都运行此脚本doc task 我怎样才能实现这个目标 这实际上很容易 首先
  • Newtonsoft JSON 序列化 byte[] 属性 [重复]

    这个问题在这里已经有答案了 public class MyClass public byte Bytes get set MyClass obj new MyClass obj Bytes new byte 1 22 44 55 strin
  • HTML5 音频 - currentTime 属性不准确?

    我正在研究一下 HTML5
  • 逐行测试多个(并非所有)列是否相等

    我想按行检查多列是否全部相等 我想出了一种复杂的方法来计算每组每个值的出现次数 但这似乎有些 麻烦 样本数据 sample df lt data frame id letters 1 6 group rep c r l 3 stringsA
  • 比较两个音频文件[重复]

    这个问题在这里已经有答案了 基本上 我有很多代表同一首歌的音频文件 然而 有些歌曲的质量比原曲差 有些经过编辑 与原曲不再相符 我想做的是以编程方式将这些音频文件与原始音频文件进行比较 看看哪些音频文件与该歌曲匹配 无论质量如何 直接比较显
  • 加载 MySQLdb 模块时出错“您安装了 mysqlclient 还是 MySQL-python?”

    我正在使用 Windows 10 命令行使用 python34 进行 django 项目 但是 我在 SQL 方面遇到了困难 我已经使用安装了 mysqlclientpip install mysqlclient 1 3 5并找到了该文件以
  • 检查 Python 字典列表中是否已存在值?

    我有一个 Python 字典列表 如下所示 a main color red second color blue main color yellow second color green main color yellow second c