Python: 列表推导式

   日期:2024-01-17     浏览:90    评论:0    

在Python语言当中,一个很神奇的特性则是列表推到式了,它能够从一个列表里面筛选出你满意的部分,并重新组成一个列表,甚至可以对筛选的列表的内容进行修改

比如说我们有一维列表:

list=[1,3,5,6,2,34,7,3,5,8]

我们想把其中大于10数字抽取出来,并重新通过append()方法生成一个大于数字10的列表,因此书写列表推倒式:

[num for num in list if num>10]

得到:

[34]

可见,34是在这个list当中最大的数字。同时重新组成一个新的列表,那么列表推倒式的通常写法则是这样的:

[表达式或变量 for 变量 in list if语句]

第一个是我们的表达式或者变量,表示使用append方法重新进入新列表的变量是什么,需要和for右边的变量有一定的关联,不然这个变量是没有申明过的话是会报错的。也可以将符合条件的变量做了一定修改之后再放到第一个表达式或者变量的地方,append进入新的列表。比如说我们想要list当中大于10的数字,同时让这个数字加一,我们该如何书写这个列表推倒式呢?:

[num+1 for num in list if num>10]

也就是将append到新列表当中的每一个数字num+1再写入列表推倒式当中,最后得到的结果也很显然是[35]了,您感兴趣的话可以自己试试看。或者我们有一个新的列表,列表里面充满了人的名字,我们需要找到长度大于三的人名,并同时将长度大于三的人名首字母大写,最后再重新得到一个新的列表,代码改如何书写呢?代码的书写方法如下所示,首先创建列表:

 list=["bob","mike","kelly","ao li gei"]

 书写列表推倒式:

[name.capitalize() for name in list if len(name)>3]

 得到:

['Mike', 'Kelly', 'Ao li gei']

 

 

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服