如何检查字典中是否有指定值?

时间:2019-06-24 09:29:31

标签: python-3.x list dictionary

我正在设置脚本,我需要知道字典中是否有指定的值。

dict = {"1" : [1, 2, 3], "2" : [4, 5, 6]}

我如何打印:

'dict analyzed'

如果列表中有5个?

事实是我想分析dict值中的所有列表,但我不知道该如何翻译。

3 个答案:

答案 0 :(得分:2)

for key, value in d.items():
    if 5 in value:
        print('5 in dict')
        break
  • 使用break在找到值后停止循环,并节省了不遍历整个字典的时间。

如果您使用的是python2,请使用iteritems()代替items()

答案 1 :(得分:0)

因为我无法入睡,所以在凌晨2:30在手机上执行此操作,请耐心等待格式化。

if any(5 in x for x in mydict.values()):
    print("dict analyzed")

这是使用Python的巧妙方法之一。在较高的层次上,您需要遍历mydict.values(),该循环提供mydict的值的迭代(dict由键值对组成。)如果其中之一包含5,然后打印“ dict分析”。

我使用的any函数是语法糖;请注意,高水平的想法保持不变。

答案 2 :(得分:-1)

首先,避免将事物分配给诸如dict之类的内置名称。

以下内容针对您的用例:

mydict = {"1" : [1, 2, 3], "2" : [4, 5, 6]}
for key, vals in mydict.items():
    if 5 in vals:
        print('Dict analyzed')