Skip to main content
 首页 » 编程设计

python之从列表中提取关键字然后使用 `and`

2025年05月04日8mfryf

我不知道怎么解释。例如我有以下代码:

if 'foo' and 'bar' in 'foobar': 
    print('foobar') 

我想使用一些关键字来检查 sting,我的问题是,现在我正尝试将这些关键字放在这样的列表中:

keywords = ['foo', 'bar'] 

但是我现在该如何使用它们呢?如果我使用 for 像这样提取它们:

for i in keywords: 
    if i in 'foobar': 
        print('foobar') 

但这会打印两次 foobar。

请您参考如下方法:

您可以使用生成器表达式遍历所有关键字并检查它们是否都包含在 'foobar' 中。使用 all 也将允许它在找到第一个 False 时短路。

if all(i in 'foobar' for i in keywords): 
    print('foobar') 

与此类似的是,如果您想要打印,如果找到任何关键字,您可以使用

if any(i in 'foobar' for i in keywords): 
    print('foobar')