推导式
python 推导式是一种独特的处理方式,可以从一个数据序列构建另一个新的数据序列的结构体
python 支持的数据结构推导式:
- 列表
- 元组
- 字典
- 集合
列表推导式
[表达式 for 变量 in 列表]
[out_exp_res for out_exp in input_list]
或者
[表达式 for 变量 in 列表 if 条件]
[out_exp_res for out_exp in input_list if condition]
- out_exp_res: 列表生成元素表达式,可以是有返回值的函数
- for out_exp_res in input_list:迭代 input_list 将 out_exp 传入到 out_exp_res 表达式中
- if condition:条件语句,可以过滤掉列表中不符合条件的元素
字典生成式
# 使用字符串创建字典
listdemo = ['Google','Runoob', 'Taobao']
# 将列表中各字符串为键,各字符串长度为值,组成键值对
dict1 = {key:len(key) for key in listdemo}
print(dict1)
# 提供3个数以3个数为键,3个数的平方为值
dict2 = {key:key**2 for key in (2,3,4)}
print(dict2)
集合推导式
# 计算数字1,2,3的平方
set_demo = {key**2 for key in [1,2,3]}
print(set_demo)
# 判断不是a,b,c的字母并输出
set_demo1 = {i for i in 'abcderfg' if i not in 'a,b,c'}
print(set_demo1)
元组推导式(生成器表达式)
元组推导式可以利用 range 区间、列表、字典、集合等按照要求快速生成一个元组
a = (x for x in range(1,10))
a
<generator object <genexpr> at 0x7faf6ee20a50> # 返回的是生成器对象
tuple(a) # 使用 tuple() 函数,可以直接将生成器对象转换成元组
(1, 2, 3, 4, 5, 6, 7, 8, 9)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!