我有一个列表,其中包含关键字id = ['pop','ppp','cre'],现在我正在浏览一堆文件/大字符串,如果这些关键字中的任何一个都在我的文件中能做点什么......
像:
id = ['pop','ppp','cre']
if id in dataset:
print id
但我认为现在所有这3个或更高版本可能更多都必须在数据集中,而不仅仅是一个。
答案 0 :(得分:1)
您可以使用all
确保id
列表中的所有值都在数据集中:
id = ['pop', 'ppp', 'cre']
if all(i in dataset for i in id):
print id
答案 1 :(得分:1)
您的代码实际上将通过dataset
查看整个列表“['pop', 'ppp', 'cre']
”。你为什么不尝试这样的事情:
for item in id:
if item in dataset:
print id
修改强>
这可能会更有效:
for item in dataset:
if item in id:
print id
假设| dataset | > | ID |当你找到一个匹配时,你就会脱离循环。
答案 2 :(得分:1)
由于您提到需要检查数据集中的任何字词,我认为any() built-in method will help:
if any(word in dataset for word in id):
# do something
或者:
if [word for word in id if word in dataset]:
# do something
和
if filter(lambda word: word in dataset, id):
# do something