私信  •  关注

Micah Walter

Micah Walter 最近创建的主题
Micah Walter 最近回复了
9 年前
回复了 Micah Walter 创建的主题 » 在python代码中使用pass语句的目的是什么?[复制品]

除了用作未实现函数的占位符之外, pass 可用于填写if-else语句(“显式优于隐式”。)

def some_silly_transform(n):
    # Even numbers should be divided by 2
    if n % 2 == 0:
        n /= 2
        flag = True
    # Negative odd numbers should return their absolute value
    elif n < 0:
        n = -n
        flag = True
    # Otherwise, number should remain unchanged
    else:
        pass

当然,在这种情况下,人们可能会使用 return 而不是分配,但在需要突变的情况下,这是最好的。

使用 通过 这里特别有助于提醒未来的维护人员(包括您自己!)不要把多余的步骤放在条件语句之外。在上面的例子中, flag 在两个特别提到的案例中设置,但在 else -病例。不使用 通过 ,未来的程序员可能会 flag = True 从而设置 旗帜 在里面 全部的 病例。


另一个例子是在文件底部经常看到的样板函数:

if __name__ == "__main__":
    pass

在一些档案里,把它放在那里可能会更好 通过 允许以后更容易地编辑,并明确表示当文件单独运行时不会发生任何事情。


最后,如其他答案中所述,在捕获异常时不执行任何操作可能很有用:

try:
    n[i] = 0
except IndexError:
    pass