ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python推导式

2022-03-06 17:33:23  阅读:151  来源: 互联网

标签:推导 python 元组 key print new listdemo


推导式

列表

过滤掉长度小于或等于3的字符串列表,并将剩下的转换成大写字母:

names = ['Bob','Tom','alice','Jerry','Wendy','Smith']
new_names=[name.upper() for name in names if len(name)>3]
print(new_names)
['ALICE', 'JERRY', 'WENDY', 'SMITH']

计算 30 以内可以被 3 整除的整数:

nums=[x for x in range(1,30) if x%3==0]
print(nums)
[3, 6, 9, 12, 15, 18, 21, 24, 27]

字典

使用字符串及其长度创建字典:

listdemo = ['Google','Runoob', 'Taobao']
l={key:len(key) for key in listdemo}
print(l)

提供三个数字,以三个数字为键,三个数字的平方为值来创建字典:

listdemo = [1,2,3]
l={key:key**2 for key in listdemo}
print(l)
{1: 1, 2: 4, 3: 9}

集合

计算数字 1,2,3 的平方数:

new_set={x**2 for x in (1,2,3)}
print(new_set)
{1,4,9}

判断不是 abc 的字母并输出:

a={x for x in "abdce" if x not in 'abc'}
print(a)
{'d', 'e'}

元组

元组推导式和列表推导式的用法也完全相同,只是元组推导式是用 () 圆括号将各部分括起来,而列表推导式用的是中括号 [],另外元组推导式返回的结果是一个生成器对象。

生成一个包含数字 1~9 的元组:

a=(x for x in range(1,10))
print(a)
print(tuple(a))# 使用 tuple() 函数,可以直接将生成器对象转换成元组
<generator object <genexpr> at 0x0000020B713ACC10>
(1, 2, 3, 4, 5, 6, 7, 8, 9)

 

标签:推导,python,元组,key,print,new,listdemo
来源: https://www.cnblogs.com/wxy214/p/15972688.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有