本文實例分析了Python減少循環(huán)層次和縮進的技巧。分享給大家供大家參考,具體如下:
我們知道Python中冒號和縮進代表大括號,這樣寫已經(jīng)可以節(jié)省很多代碼行數(shù),但是可以更優(yōu)化,盡可能減少循環(huán)的層次和縮進,讓代碼看起來更簡潔,邏輯更清楚。不僅Python語言如此,其他語言也一樣。
如圖,是兩段Python代碼,前后兩段要實現(xiàn)的功能是一樣的,但是第二段明顯可讀性更好,邏輯更佳清晰。在很多循環(huán)嵌套的時候,其實可以用“逆向思維”,用continue跳出不符合條件的循環(huán),而不是成立的時候繼續(xù)執(zhí)行,這樣只會不斷加深循環(huán)的層次。
下面是圖示中的Python代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
"""優(yōu)化前""" for item in items: if is_for_sale(item): cost = compute_cost(item) if cost < = wallet.money: buy(item) """優(yōu)化后""" for item in items: if not is_for_sale(item): continue cost = compute_cost(item) if cost > wallet.money: continue buy(item) |
這樣做減少了循環(huán)嵌套的層次,使可讀性和邏輯性更直觀,也沒有那么多縮進。
轉(zhuǎn)自:小談博客 http://www.tantengvip.com/2015/05/python-for-level/
希望本文所述對大家Python程序設(shè)計有所幫助。