gre*_*eye 5 python performance if-statement
我在循环内部进行了一次分割操作,重复多次.碰巧在前几次通过循环(或多或少的前10个循环)中,除数为零.一旦获得值,就不再可能出现div by zero错误.
我有一个if条件来测试除数值,以避免div为零,但我想知道有一个性能影响,评估这if将对后续循环中的每次运行有所影响,特别是因为我知道它已经没用了.
该如何编码?在Python?
别担心.一个if (a != 0)便宜.
替代方案(如果你真的想要一个)可以将循环拆分为两个,并在除数得到其值后退出第一个循环.但这听起来会使代码变得不必要地复杂(难以阅读).
我会把你的调用包装在try/except块中.它们在python中非常便宜,并且如果没有抛出异常,则成本与pass语句一样多.Python的设计使您可以进行调用并解析任何错误,而不是总是询问权限.
示例代码:
def print_divide(x,y):
try:
print x/y
except ZeroDivisionError:
pass
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1272 次 |
| 最近记录: |