找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 15557|回复: 4

[已回复] 如何判断列表内的字典里的Value是否存在?

6

主题

8

帖子

8

积分

贫民

积分
8
hawkingyy 发表于 2016-11-8 13:46:35 | 显示全部楼层 |阅读模式
  1. list = []
  2. dict1 = {"a":1, "b":2, "c":3}
  3. dict2 = {"d":4, "e":5, "f":6}
  4. list.append(dict1)
  5. list.append(dict2)
复制代码
现在列表的样子就是:
「{'a': 1, 'c': 3, 'b': 2}
{'e': 5, 'd': 4, 'f': 6}」

有没有什么类似“in”的方法能判断“4”这个键值在不在list这个列表中?返回一个布尔值。
回复

使用道具 举报

50

主题

1057

帖子

1108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1108

活跃会员热心会员最佳导师默默耕耘突出贡献优秀版主荣誉管理论坛元老

blueelwang 发表于 2016-11-8 19:55:14 | 显示全部楼层
可以先遍历list, 然后在判断每个dict中值是否存在,if (v in dict.values()):
回复 支持 2 反对 0

使用道具 举报

4

主题

24

帖子

24

积分

贫民

积分
24
pythonCXZ 发表于 2016-11-13 23:02:57 | 显示全部楼层
这样吗?
for i in list:
    for j in  i.keys():
        if  i[j] == 4:
            return True
        else:
            return None
回复 支持 反对

使用道具 举报

0

主题

1

帖子

1

积分

贫民

积分
1
VincentLin 发表于 2016-11-14 13:29:05 | 显示全部楼层
for values in dict1.values():
   if 4 in values:
      return Ture
   else:
      return False
回复 支持 反对

使用道具 举报

0

主题

12

帖子

12

积分

贫民

积分
12
672399809 发表于 2016-11-16 21:03:28 | 显示全部楼层
def keyInList(k, l):
        return bool([True for i in l if k in i.values()])
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表