创新互联Python教程:itertools怎样对python3代码单行处理?

之前我们就有提到过,foe循环语句如果加上嵌套的后,并不是很多python初学者理解的简单代码。正巧小编最近就遇到了对代码进行简单处理的问题,涉及到了嵌套的for循环。本篇代码的处理需要借助itertools来进行单行实现,想要对代码进行简化的小伙伴,一起来看看怎么操作吧。


我们经常会如下这种嵌套的for循环代码

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)

这里仅仅是三个 for 循环,在实际编码中,有可能会有更层。

这样的代码,可读性非常的差,很多人不想这么写,可又没有更好的写法。

这里介绍一种常用的写法,使用itertools这个库来实现更优雅易读的代码。

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

从上面输出的代码我们可以看出,代码方面已经非常精简,我们看起来也不再费劲了。想要获得跟小编一样效果的小伙伴,赶紧学起来吧。

当前题目:创新互联Python教程:itertools怎样对python3代码单行处理?
浏览地址:http://www.shufengxianlan.com/qtweb/news36/330836.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联