2024-04-25 23:47:12 发布
网友
我不知道该怎么解释。例如,我有以下代码:
if 'foo' and 'bar' in 'foobar': print('foobar')
我想用一些关键字来检查刺,我的问题是,现在我试着把这些关键字放在这样一个列表中:
keywords = ['foo', 'bar']
但我现在怎么用呢?如果我使用for像这样提取它们:
for
for i in keywords: if i in 'foobar': print('foobar')
但这会打印foobar两次
foobar
您可以使用生成器表达式来循环所有关键字,并检查它们是否都包含在'foobar'中。使用all也将允许它在找到第一个False时短路
'foobar'
all
False
if all(i in 'foobar' for i in keywords): print('foobar')
与此类似的是,如果您想print如果找到任何关键字,您可以使用
print
if any(i in 'foobar' for i in keywords): print('foobar')
如果您想继续使用循环,可以使用for-else
for-else
for i in keywords: if i not in 'foobar': break else: print('foobar')
如果任何i不在'foobar',循环将退出并跳过else部分。只有当循环退出而没有break时才进入elseif for-else,在这种情况下,只有当每个i都在'foobar'中时才会发生这种情况
i
else
break
您可以使用生成器表达式来循环所有关键字,并检查它们是否都包含在
'foobar'
中。使用all
也将允许它在找到第一个False
时短路与此类似的是,如果您想
print
如果找到任何关键字,您可以使用如果您想继续使用循环,可以使用
for-else
如果任何
i
不在'foobar'
,循环将退出并跳过else
部分。只有当循环退出而没有break
时才进入else
iffor-else
,在这种情况下,只有当每个i
都在'foobar'
中时才会发生这种情况相关问题 更多 >
编程相关推荐