大佬教程收集整理的这篇文章主要介绍了比较 2 个不均匀列表包含在 python 中具有唯一键的字典和在 a 但不在 b 中的搜索键值,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
大家好,我还在学习python,在字典列表中寻找帮助。
有两个字典 a1 和 p1 的列表,我们试图取出存在 a1 但不存在于 p1 中的“代码”,如果代码存在而不是 p1,那么它的 IsRemoved 应该具有值 0,即 [IsRemoved] == 0
eslint --fix
所以这里我期望输出为:
a1 = [{'Code': '1','name': 'ven1','Domainname': 'xyz.com','IsRemoved': 0},{'Code': '2','name': 'ven2','Domainname': 'abc.co.in','IsRemoved': 1},{'Code': '3','name': 'ven3','Domainname': 'abc.com',{'Code': 'v001','Domainname': 'xyz.com|abc.com',{'Code': '4','name': 'ven4',{'Code': '5','name': 'ven5',{'Code': '6','name': 'ven6',{'Code': '7','name': 'ven7',{'Code': '8','name': 'ven8',{'Code': '9','name': 'ven9',{'Code': '10','name': 'ven10',{'Code': '11',{'Code': 'v002','IsRemoved': 0}]
p1 = [{'Code': '1','Domain': ['xyz.com']},'Domain': ['abc.co.in']},'Domain': ['abc.com']},'Domainname': 'abc.com' ]
我尝试使用 for 循环和 != 以下方式:
{'Code': 'v001','IsRemoved': 0}
{'Code': '6','IsRemoved': 0}
{'Code': '8','IsRemoved': 0}
{'Code': '10','IsRemoved': 0}
{'Code': '11','IsRemoved': 0}
{'Code': 'v002','IsRemoved': 0}
当我试图找到 == 时,它工作正常并给我正确的结果,但奇怪的是它不能正常工作 !=
如果我可以使用其他方法来获得所需的结果,请查看并指导。
您可以尝试以下方法,从 p1
创建唯一代码并使用列表理解在 a1
上应用过滤器。
unique = {p['Code'] for p in p1} # use set for faster lookup
[a for a in a1 if a['Code'] not in unique and a['IsRemoved'] == 0]
以上是大佬教程为你收集整理的比较 2 个不均匀列表包含在 python 中具有唯一键的字典和在 a 但不在 b 中的搜索键值全部内容,希望文章能够帮你解决比较 2 个不均匀列表包含在 python 中具有唯一键的字典和在 a 但不在 b 中的搜索键值所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。