当前位置: 首页 > news >正文

列表集合字典推导式

推导式

推导式,又称解析式,是Python的一种独有特性,推导式是可以从一个数据序列构建另一个新的数据序列的结构体。其目的是简化代码的编写

python中有三种推导式

  • 列表推导式
  • 集合推导式
  • 字典推导式

无推导式编码

假设我们要创建一个 0~9 的列表,可以使用while或者for循环来快速创建

  • while循环方式
items = []
i = 0
while i < 10:items.append(i)i += 1
  • for 循环方式
items = []
for i in range(10):items.append(i)

推导式语法格式

# 列表推导式
变量名 = [变量名 for ... in ... if 判断条件]
# 元组推导式
变量名 = {变量名 for ... in ... if 判断条件}
# 字典推导式
变量名 = {变量名1:变量名2 for ... in ... if 判断条件}

代码案例

例1. 创建一个 0~ 9 的列表

list1 = [i for i in range(10)]

例2: 创建一个 0 ~ 9 的偶数列表

list1 = [i for i in range(10) if i % 2 == 0]

例3. 创建列表 [(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]

# 循环嵌套
list1 = []
for i in range(1,3):for j in range(3)list1.append((i,j))
print(2)# 推导式
list3 = [(i,j) for i in range(1,3) for j in range(3)]
print(list3)

例4. 创建一个字典,key是 1 ~ 5 的数字,value是该数字的2次方

maps = {i:i*i for i in range(1,6)}

例5. 将两个列表合并为一个字典

keys = ['name','age','gender']
values = ['Tom',20,'man']
user = {keys[i]:values[i] for i in range(len(keys))}
print(user)

相关文章:

  • 互联网大厂Java求职面试:云原生架构与AI应用集成解决方案
  • SkyWalking高频采集泄漏线程导致CPU满载排查思路
  • springboot配置mysql druid连接池,以及连接池参数解释
  • 系统架构设计师脑图
  • 【c++】: c++11线程库
  • 重读《人件》Peopleware -(12-1)Ⅱ 办公环境 Ⅴ 大脑时间与身体时间(上)
  • python实战:Python脚本后台运行的方法
  • Redis主从+哨兵+集群分片
  • 树莓派4B搭建Hector SLAM算法, ROS1 ROS2?
  • 短视频与直播场景下的美颜SDK优化方案:滤镜与特效如何平衡性能与美感?
  • 方洪波摸着雷军,“甩掉”小米
  • FPGA 42 ,时序约束深度解析与实战应用指南( FPGA 时序约束 )
  • 独木桥 Java
  • 应用案例 | 柔性生产新范式,优傲UR20赋能葡萄酒灌装产线
  • Servlet的继承关系和生命周期
  • 小白学习顺序表 之 通讯录实现
  • 《算法导论(第4版)》阅读笔记:p115-p126
  • 【GPU并行计算】不同设备上的GPU性能分析
  • 移动安全Android——ROOT检测绕过
  • 大模型技术生态全景解析:从基础组件到AGI的演进之路
  • 网站开发公司广州/线下推广方法有哪些
  • 微信网站案例/seo外包公司如何优化
  • 网站开发 工期安排/网页设计制作网站模板图片
  • 专业网站开发费用/南京seo优化推广
  • wordpress自定义分类调用/怎么优化关键词
  • 三亚网红/优化大师下载安装