迭代列表直到条件python [关闭]

Posted

技术标签:

【中文标题】迭代列表直到条件python [关闭]【英文标题】:Iterate list till condition python [closed] 【发布时间】:2021-05-02 17:20:49 【问题描述】:

我需要迭代一个列表直到满足一个条件。 我想要最pythonic的方式来编写这段代码。

for i in list:
   if condition(i):
      foo(i)
   else:
      break

【问题讨论】:

你有的就好了 ***.com/questions/9138112/… 是否回答了您的问题? 我没问题。但不要使用内置的 list 作为变量 - 试试 lst 或类似的东西。 @ZaidAly,它没有。注意我的代码中的中断。 【参考方案1】:

你所拥有的很好,但对于更大的循环体,我会使用提前退出守卫:

for i in list:
   if not condition(i):
      break
   foo(i)

这有两个好处:

    少一级缩进。更容易遵循代码。 break 现在接近它所属的条件。否则,在阅读代码时,当您看到break 时,您需要回过头来记住它发生的时间

【讨论】:

以上是关于迭代列表直到条件python [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

迭代列表并从中删除项目的最佳方法? [关闭]

基于成本字段存储排序项目的数据结构[关闭]

为啥for循环遍历python中的1个项目? [关闭]

python如何创建字典? [关闭]

在java中添加集合到可迭代列表[关闭]

如何找到可迭代的最大值? [关闭]