繁体   English   中英

如何在字典中查找任何列表值

[英]How to find any list value in a dictionary

在我的 python 项目中,我有一个名为“Dictionary”的变量,它是具有整数值的各种字符串键的字典。

我还有一个变量,它是一个包含大量字符串的列表。

我希望我的代码将列表中的字符串与字典中的键进行比较,如果匹配,则将所述键的值分配给变量。

额外信息:这里的输入是一个名为listforwiki的变量,它是一个名称列表,格式如下:

['content','content','content',]等大约 300 个字符串。

然后通过 Wikipedia API 查询运行,获取每个字符串的 bio 概要,并将其分配给temp

然后这个temp字符串被.split()分割成多个字符串的列表,并分配给变量tempstring

预期的输出是字典中的值。 这是一个整数。

我想要代码做的就是将列表tempstring中的字符串与字典中的值进行比较,如果匹配,则将字典中所述值的互补键分配给变量label

希望一切都清楚。 下面是我到目前为止的代码。

try:
    for i in listforwiki:
        temp = wikipedia.summary(i)
        tempstring = temp.split()
        if tempstring in dictionary:
            label = dictionary[str(tempstring)]
except:
    pass

它根本不起作用

我不知道如何解决这个问题,所以如果有人能提供帮助,我将不胜感激。

注意, label变量将被分配给一个对象参数,它需要是一个整数,我现在只是把它变成一个字符串,因为label = dictionary[str(tempstring)]下的下一行代码是print(label)print(label) ,纯粹用于故障排除目的。

函数 split() 返回一个字符串数组,您可以在此处看到https://docs.python.org/3.3/library/stdtypes.html?highlight=split#str.split所以实际上tempstring是一个字符串列表。 您应该做的是遍历tempstring并检查每个字符串是否在dictionary中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM