1. 列表推导式

        ⽤⼀个表达式创建⼀个有规律的列表或控制⼀个有规律列表,又叫列表生成式。

1.1 简单的列表推导式

需求:创建⼀个0-10的列表。
示例代码:【while循环实现】
# 1. 准备⼀个空列表
list1 = []
# 2. 书写循环,依次追加数字到空列表list1中
i = 0
while i < 10:list1.append(i)i += 1
print(list1)
运行结果:

示例代码:【for循环实现】

list1 = []
for i in range(10):list1.append(i)
print(list1)

运行结果:

示例代码:【列表推导式实现】

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

运行结果:

1.2if的列表推导式

需求:创建0-10的偶数列表
示例代码:【range()步⻓实现】
list1 = [i for i in range(0, 10, 2)]
print(list1)
运行结果:
示例代码:【if实现】
list1 = [i for i in range(10) if i % 2 == 0]
print(list1)

运行结果:

1.3 多个for循环实现列表推导式

需求:创建列表如下:
[(1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
示例代码:
# 【先执行前面的for循环】
lst = [(i, j) for i in range(7, 9) for j in range(3)]
print(lst)

运行结果:

2. 字典推导式

快速合并列表为字典或提取字典中⽬标数据。

如下面两个列表,可以使用字典推导式快速合并为一个字典格式。
list1 = ['name', 'age', 'gender']
list2 = ['Tom', 20, 'man']
1. 创建⼀个字典:字典key是1-5数字,value是这个数字的2次⽅。
示例代码:
dict1 = {i: i ** 2 for i in range(1, 5)}
print(dict1)  # {1: 1, 2: 4, 3: 9, 4: 16}

运行结果:

2. 将两个列表合并为⼀个字典
示例代码:
list1 = ['name', 'age', 'gender']
list2 = ['Tom', 20, 'man']
dict1 = {list1[i]: list2[i] for i in range(len(list1))}
print(dict1)

运行结果:

3. 提取字典中⽬标数据
示例代码:
counts = {'MBP': 268, 'HP': 125, 'DELL': 201, 'Lenovo': 199, 'acer': 99}
# 需求:提取上述电脑数量⼤于等于200的字典数据
count1 = {key: value for key, value in counts.items() if value >= 200}
print(count1)  # {'MBP': 268, 'DELL': 201}

运行结果:

3. 集合推导式

如何创建⼀个集合,数据为下⽅列表的2次⽅。
list1 = [1, 1, 2]
示例代码: 【注意:集合有数据去重功能。】
list1 = [1, 1, 2]
set1 = {i ** 2 for i in list1}
print(set1)  # {1, 4}

运行结果:

python中列表、字典和集合推导式相关推荐

  1. python中列表字典和字符串的相互转化

    python中列表字典和字符串的相互转化有两种方法: (1)使用str和eval的方法,一个简单的例子如下: data = {'name' : 'ACME','shares' : 100,'price ...

  2. Python基础教程:列表、字典、集合推导式

    下面是一个以列表推导式为例的推导式详细格式,同样适用于其他推导式. variable = [out_exp_res for out_exp in input_list if out_exp == 2] ...

  3. python中的字典和集合_Python 字典和集合

    字典的每个键值对用冒号分割,键值对之间用逗号分隔,所有键值对包括在{}中. d = {key1 : value1, key2 : value2 } 键必须是唯一的,值可以不唯一.值可以取任何数据类型, ...

  4. python中列表字典元组之间的区别_python之字典、元组、列表的区别

    1.列表:专门用于存储一串信息,列表用中括号[]定义,数据之间使用逗号,分隔 list_0=['a','b','c'] 列表的特点: 1)可修改.可增加.可删除 2)列表是有序的,可以遍历 3)可以将 ...

  5. python中列表 字典 元祖 enumerate()函数

    2017-5-29 列表 : [ ] list = [] #定义一个空列表list.append(1) #向列表中添加成员list.count(2) #计算2在列表中出现的次数list.extend( ...

  6. python集合与字典区别_Python中的字典与集合

    今天我们来讲一讲python中的字典与集合 Dictionary:字典 Set:集合 字典的语法:Dictionary字典(键值对) 语法: dictionary = {key:value,key:v ...

  7. 字典推导式_聊一聊:python的各种推导式(列表推导式、字典推导式、集合推导式)...

    作者:苍松 原文:https://www.cnblogs.com/tkqasn/p/5977653.html 推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可 ...

  8. python列表推导式_聊一聊:python的各种推导式(列表推导式、字典推导式、集合推导式)...

    作者:苍松 原文:https://www.cnblogs.com/tkqasn/p/5977653.html 推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可 ...

  9. 『Python基础-12』各种推导式(列表推导式、字典推导式、集合推导式)

    # 『Python基础-12』各种推导式(列表推导式.字典推导式.集合推导式) 推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可以从一个数据序列构建另一个新的 ...

最新文章

  1. 【二级java】排序技术
  2. thinkphp5 mysql长连接_tp5(thinkPHP5)框架连接数据库的方法示例
  3. [RM HA 1] Cloudera CDH5 RM HA功能验证
  4. .Net Core配置与自动更新
  5. nodejs: mkdirs 递归创建目录
  6. 动词ing形式的5种用法_英语语法这样学就对了!动词-ing结构的特征和四种形式是?...
  7. linux下安装12c中间件,linux下静默安装 weblogic12.2.1.3中间件
  8. 九度 1529:棋盘寻宝(递推DP)
  9. python tkinter-单选、多选
  10. 数据结构实践——用哈希法组织关键字
  11. 编程常用资料/网站收集
  12. 手机APP——扫描全能王去除水印字样
  13. 3600000毫秒等于多少小时_一毫秒(一毫秒等于多少毫秒)
  14. 敏捷无敌之橄榄球与软件开发(9)
  15. (转载)SVN分支/主干Merge操作小记
  16. LSTM模型的推导与实现
  17. 渐变文件夹,一定要收下这两套超级精美的文件夹图标!
  18. 存照片、视频内存不够?是时候用欢太会员的云空间服务了
  19. 作为一个技术Leader,要如何去提升团队的技术氛围
  20. 再也不怕和老外交流了!我用python实现一个微信聊天翻译助手!

热门文章

  1. 隐私数据在隐私AI框架中的安全流动
  2. 能力差的程序员90%输在这点上!CTO:其实都是瞎努力!
  3. 平头哥玄铁处理器Linux新版本,5大亮点速览
  4. 超赞的PyTorch资源大列表,GitHub标星9k+,中文版也上线了
  5. 联泰集群发布水晶系列工作站,用于深度学习场景
  6. Facebook频谱图模型生成比尔·盖茨声音,性能完胜WaveNet、MAESTRO
  7. 上手!深度学习最常见的26个模型练习项目汇总
  8. 利用3D打印构建衍射深度神经网络,可光速执行数字运算
  9. Facebook 应用机器学习团队专访:人工智能在 Facebook 中的应用
  10. 新来的同事问我 where 1=1 是什么意思