Pythonic方法结合FOR循环和IF语句?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (129)

我知道如何在单独的使用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])

但是我找不到一个很好的例子,。我希望看到的是:

for x in xyz if x not in a:
    print(x...)
提问于
用户回答回答于

Pythonic获得两个s的方法是:sorted intersectionset

>>> sorted(set(a).intersection(xyz))
[0, 4, 6, 7, 9]

或者那些xyz不在以下的元素a

>>> sorted(set(xyz).difference(a))
[12, 242]
用户回答回答于

扫码关注云+社区

领取腾讯云代金券