2020年10月26日 / 333次阅读 / Last Modified 2020年10月26日
现在越来越多的需求要求python执行的更有效率,因为数据量越来越大。本文总结自己对于如何写更有效率的if...else...语句。
首先要时刻记住,if...else...或者if...elif...elif...else语句,是多选一的分支,代码从上到下执行,只要有一个分支的条件满足,进入执行,其它分支,不管是否有条件,都不会再被执行,其它分支的条件也不会再去判断!
if condition1: code...
if condition2: code....
if condition3: code....
这段代码的逻辑是,满足某个条件,就去执行对应的代码。
如果流程有可能同时满足多个条件,代码就必须写成这样。
如果流程已经确定,任何时候,只有一个条件会被满足(否则就错了),上面的代码就可以修改为下面这样更有效率的形式:
if condition1: code...
elif condition2: code....
else: code.... # contidion3
而且,还可以分析一下,哪个条件出现的频率更高,就作为condition1,因为这个形式的代码,满足了condition1,就不会再去判断condition2。
注意,上面的代码没有判断condition3,默认如果1和2这两个if分支都不满足,一定就是条件3!如果担心出问题,也可以写成 elif condition3: code.... ,最后的else: 分支是可以没有的。
这样if...else...语句,效率更好,但是一定要清楚,是否符合整体的逻辑!这个技巧的核心就是,有一些if判断是可以不做的。
-- EOF --
本文链接:https://www.pynote.net/archives/2656
《更有效率的if...else...语句》有1条留言
前一篇:python如何直接跳出多重循环?
后一篇:pass和Ellipsis(...)
©Copyright 麦新杰 Since 2019 Python笔记
需要考虑if分支内是否有外层循环的continue...以判断if..elif..是否有效果。 [ ]