使用python检查值是否已经存在于字典列表中

 更新时间:2022年12月19日 16:46:49   作者:Jenrey  
这篇文章主要介绍了使用python检查值是否已经存在于字典列表中,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

python检查值是否已经存在于字典列表中

a = [
    {'main_color': 'red', 'second_color':'blue'},
    {'main_color': 'yellow', 'second_color':'green'},
    {'main_color': 'yellow', 'second_color':'blue'},
]
 
#括号中的部分是一个生成器表达式,对于具有您要查找的键值对的每个字典都返回True,否则返回False。
if not any(d['main_color'] == 'red' for d in a):
    # does not exist
 
#如果键也可能缺少上面的代码可以给你一个KeyError。你可以通过使用get和提供一个默认值来解决这个问题。
if not any(d.get('main_color', None) == 'red' for d in a):
    # does not exist

字典列表中键值对value的存在判断

话不多说,直接上干货

1.1、最基础的:for迭代与if判断的结合

dict_list = [{"name": "小明",
              "qq": "123",
              "age": "18"},
             {"name": "小美",
              "qq": "110",
              "age": "17"}]
name = input("请输入查找的学生信息:")

for info in dict_list:
    if name == info["name"]:
        print("存在该学生")
        break
else:
    print("该学生不存在")

1.2、运用dict.values()方法返回字典中所有值value来进行判断:

if name in info.values()

运用filter()函数与lambda方法进行迭代

result = filter(lambda x: x["name"] == name, dict_list)
result_list = list(result)
if len(result_list) > 0:
    print("存在")
else:
    print("不存在")'''

关于上述代码的解释:

1.lambda方法是定义匿名函数的方法,其函数名即为其返回值,于是此处直接采用lambda定义函数而不必专门调用函数;

2.filter(function,iterable)函数有两个参数,分别是判断函数和可迭代对象,返回一个迭代器对象。一般采用list()函数将其返回值转换为列表形式。

在这个项目中,我将result_list函数输出,有惊喜!

result = filter(lambda x: x["name"] == name, dict_list)
result_list = list(result)
print(result_list)

其输出为包含小明的字典的列表,这一输出,岂不使人浮想联翩,代码可操作性大大提高!

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python配置mysql的教程(推荐)

    Python配置mysql的教程(推荐)

    下面小编就为大家带来一篇Python配置mysql的教程(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • 用Python做个自动化弹钢琴脚本实现天空之城弹奏

    用Python做个自动化弹钢琴脚本实现天空之城弹奏

    突然灵机一动,能不能用Python自动化脚本弹奏一曲美妙的钢琴曲呢?今天就一起带大家如何用Python实现自动化弹出一首《天空之城》有需要的朋友可以借鉴参考下
    2021-09-09
  • Python读取mp3中ID3信息的方法

    Python读取mp3中ID3信息的方法

    这篇文章主要介绍了Python读取mp3中ID3信息的方法,实例分析了Python中mutagen包的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • python查看模块安装位置的方法

    python查看模块安装位置的方法

    今天小编就为大家分享一篇python查看模块安装位置的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python编程调用设备串口发送数据方式

    python编程调用设备串口发送数据方式

    这篇文章主要介绍了python编程调用设备串口发送数据方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • python中的List sort()与torch.sort()

    python中的List sort()与torch.sort()

    这篇文章主要介绍了python中的List sort()与torch.sort()使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • Python使用XPath解析HTML的方法详解

    Python使用XPath解析HTML的方法详解

    XPath是一种用于选择XML文档中节点的语言,它可以通过路径表达式来定位节点。本文将介绍Python中使用XPath解析HTML文档的方法和技巧,需要的可以参考下
    2023-05-05
  • Python进阶学习之带你探寻Python类的鼻祖-元类

    Python进阶学习之带你探寻Python类的鼻祖-元类

    这篇文章主要介绍了Python进阶学习之带你探寻Python类的鼻祖-元类,文中有非常详细的解释,对正在学习python的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-05-05
  • pytorch中如何设置随机种子

    pytorch中如何设置随机种子

    这篇文章主要介绍了pytorch中如何设置随机种子,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • Win8.1下安装Python3.6提示0x80240017错误的解决方法

    Win8.1下安装Python3.6提示0x80240017错误的解决方法

    这篇文章主要为大家详细介绍了Win8.1下安装Python3.6提示0x80240017错误的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07

最新评论