Python减少循环层次和缩进的技巧分析
本文实例分析了Python减少循环层次和缩进的技巧。分享给大家供大家参考,具体如下:
我们知道Python中冒号和缩进代表大括号,这样写已经可以节省很多代码行数,但是可以更优化,尽可能减少循环的层次和缩进,让代码看起来更简洁,逻辑更清楚。不仅Python语言如此,其他语言也一样。

如图,是两段Python代码,前后两段要实现的功能是一样的,但是第二段明显可读性更好,逻辑更佳清晰。在很多循环嵌套的时候,其实可以用“逆向思维”,用continue跳出不符合条件的循环,而不是成立的时候继续执行,这样只会不断加深循环的层次。
下面是图示中的Python代码:
"""优化前""" for item in items: if is_for_sale(item): cost = compute_cost(item) if cost <= wallet.money: buy(item) """优化后""" for item in items: if not is_for_sale(item): continue cost = compute_cost(item) if cost > wallet.money: continue buy(item)
这样做减少了循环嵌套的层次,使可读性和逻辑性更直观,也没有那么多缩进。
转自:小谈博客 http://www.tantengvip.com/2015/05/python-for-level/
希望本文所述对大家Python程序设计有所帮助。
相关文章
解决Python报错:ValueError:operands could not be broadcast t
这篇文章主要给大家介绍了关于解决Python报错:ValueError:operands could not be broadcast together with shapes的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下2023-02-02
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
这篇文章主要介绍了Python破解BiliBili滑块验证码的思路,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2020-02-02
关于python3.7安装matplotlib始终无法成功的问题的解决
这篇文章主要介绍了关于python3.7安装matplotlib始终无法成功的问题的解决,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-07-07


最新评论