繁体   English   中英

在python循环中实现控制流的正确风格

[英]Proper style to implement control flow in python loop

我不确定这个问题的标题是否正确,或者是否是正确的问题(对不起,如果这是重复的)。

在 python 循环中管理控制流的最佳(最 pythonic)方法是什么,我特别想跳过过滤器列表中的项目。 这是我的两种方法:

想法1:

items=["a","b","c","x","b"]
filterList=["x","y","z"]
for i in items:
    if i in filterList:
        continue

    ... Code for working with i

想法2:

items=["a","b","c","x","b"]
filterList=["x","y","z"]
for i in items:
    if i not in filterList:
        ... Code for working with i

这两种风格中的一种是否比另一种更 Pythonic 或更易读?

编辑 1:需要注意的一件事是项目可能有重复项,更新代码以反映这一点。

您可以使用列表理解:

items = ...
filterList = ...

filtered_items = (i for i in items if i not in filterList)

for i in filtered_items:
   do the thing

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM