在Python中简化"如果字符串中的var1或字符串中的var2:"

Tex*_*512 0 python

是否比...更简单

if var1 in string or var2 in string:
Run Code Online (Sandbox Code Playgroud)

我试着这样:

if (var1 or var2) in string:
Run Code Online (Sandbox Code Playgroud)

但这不起作用......

提前致谢 !

Pad*_*ham 5

你可以使用任何:

if any(x in string for x in (var1, var2))
Run Code Online (Sandbox Code Playgroud)

any(iterable) 如果iterable的任何元素为true,则返回True.如果iterable为空,则返回False

正如在两个vars的评论中指出的那样,你自己的解决方案就像你将获得的一样简单,但在我看来,如果你有3个或更多的vars,那么这any是一个更好,更简洁的解决方案.

  • 虽然这有效,但可以说它不如原版.您必须更多地考虑代码以了解它正在做什么.原版更清晰,但如果你检查的变量多于两个变量,这个变量会更好. (3认同)