python列表生成式用法

巴扎黑
发布: 2016-11-26 09:39:22
原创
1954人浏览过

列表生成式:list comprehensions,是python中非常非常简单但却最常用的一个功能。

根据名字就能知道,列表生成式所返回的应该是list类型,它能用最简单最易懂的写法生成所需要的列表。

例:我需要得到1-100这个list的所有数的平方所组成的一个list。此时可以用for循环:

Python代码  

a = []  

立即学习Python免费学习笔记(深入)”;

for value in range(1, 101):  

    a.append(value * value)  

  

print(a)  

  此时得到的a就是1-100中每个数的平方所组成的数组。这个方法很简单,但是使用列表生成式更简单。

Python代码  

a = [value * value for value in range(1,101)]  

print(a)  

  得到的a与上一个方法中的a一摸一样。

 

  在 a = [value * value for value in range(1,101)] 中,value * value是一个表达式,value这个数来源于表达式后面的for循环,for循环每循环一次,就计算一次表达式,最后将for循环中每次循环的数的计算结果都保存在一个列表中。最后赋值给a。

 

 

在列表生成式中,也可以使用多次循环。比如:

 

Python代码  

a = [x * y for x in range(1,3) for y in range(3,5)]  

print(a)  

 生成结果为:

终端代码  

[3, 4, 6, 8]  

 range(1,3)为[1, 2], range(3,5)为[3,4],x来自range(1,3),y来自range(3,5)

 结果为:1*3, 1*4, 2*3, 2*4

 

 此外,还可以在列表生成式中增加条件判断:

Python代码  

a = [value * value for value in range(1, 11) if value % 2 == 0]  

print(a)  

  

#结果为:  

[4, 16, 36, 64, 100]  

  在for循环后面给value值增加条件选择。此例子是计算1-10中偶数的平方

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号