首页 > 解决方案 > if: else: 和 if: continue 之间的区别

问题描述

假设我有一个可迭代的:球。我想对那个循环中所有不是蓝色的球做点什么。据我所知,我有两个选择:

使用如果:否则:

for ball in balls:
    if ball.blue:
        # can do something with blue ball
    else:
        # now execute code for all balls that are not blue

使用如果:继续

for ball in balls:
    if ball.blue:
        # can do something with blue ball
        continue
    # now execute code for all balls that are not blue

对我来说,这两种结构可以实现的目标没有区别。有没有预期的区别?是否存在更快、更具可读性等的情况?

标签: pythonloopsif-statementcontinue

解决方案


我相信这应该取决于你对球做了什么。如果您正在做类似的事情,可以说改变球的大小,并且您希望蓝色的球具有一定的尺寸,而所有其他球的尺寸都是我将使用 if/else 的另一个尺寸。如果您所做的在概念上有所不同,我将使用 continue 示例。

如果你的目标是只对蓝球做点什么,你应该简单地写:

for ball in balls:
    if not ball.blue:
        # do what you want to balls that aren't blue.

推荐阅读