新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:itertools怎樣對python3代碼單行處理?
之前我們就有提到過,foe循環(huán)語句如果加上嵌套的后,并不是很多python初學(xué)者理解的簡單代碼。正巧小編最近就遇到了對代碼進(jìn)行簡單處理的問題,涉及到了嵌套的for循環(huán)。本篇代碼的處理需要借助itertools來進(jìn)行單行實(shí)現(xiàn),想要對代碼進(jìn)行簡化的小伙伴,一起來看看怎么操作吧。

我們經(jīng)常會如下這種嵌套的for循環(huán)代碼
list1 = range(1,3) list2 = range(4,6) list3 = range(7,9) for item1 in list1: for item2 in list2: for item3 in list3: print(item1+item2+item3)
這里僅僅是三個(gè) for 循環(huán),在實(shí)際編碼中,有可能會有更層。
這樣的代碼,可讀性非常的差,很多人不想這么寫,可又沒有更好的寫法。
這里介紹一種常用的寫法,使用itertools這個(gè)庫來實(shí)現(xiàn)更優(yōu)雅易讀的代碼。
from itertools import product list1 = range(1,3) list2 = range(4,6) list3 = range(7,9) for item1,item2,item3 in product(list1, list2, list3): print(item1+item2+item3)
輸出如下
$ python demo.py 12 13 13 14 13 14 14 15
從上面輸出的代碼我們可以看出,代碼方面已經(jīng)非常精簡,我們看起來也不再費(fèi)勁了。想要獲得跟小編一樣效果的小伙伴,趕緊學(xué)起來吧。
網(wǎng)頁標(biāo)題:創(chuàng)新互聯(lián)Python教程:itertools怎樣對python3代碼單行處理?
鏈接地址:http://m.fisionsoft.com.cn/article/ccieoid.html


咨詢
建站咨詢
