小编典典

结合FOR循环和IF语句的Python方法

python

我知道如何在单独的行上同时使用for循环和if语句,例如:

>>> a = [2,3,4,5,6,7,8,9,0]
... xyz = [0,12,4,6,242,7,9]
... for x in xyz:
...     if x in a:
...         print(x)
0,4,6,7,9

而且我知道当语句很简单时,我可以使用列表推导来组合这些内容,例如:

print([x for x in xyz if x in a])

但是我找不到一个很好的例子,可以在任何地方(复制和学习)演示一组复杂的命令(不仅仅是“ print
x”),这些命令是在for循环和某些if语句组合后发生的。我期望的是:

for x in xyz if x not in a:
    print(x...)

这不是python应该工作的方式吗?


阅读 263

收藏
2020-12-20

共1个答案

小编典典

您可以使用以下生成器表达式

gen = (x for x in xyz if x not in a)

for x in gen:
    print x
2020-12-20