Python列表推导式字典推导式

简介: 变量 = [生成数据的规则 for 临时变量 in xxx if xxx]每循环一次,并且if条件为True,生成一个数据变量 = [生成数据的规则 for 临时变量 in xxx for j in xxx]第二个for 循环 循环一次,生成一个数据补充: 字典推导式变量 = {生成字典的规则 for 临时变量 in xx}my_dict = {key: value for i in range(3)}.........

列表推导式, 为了快速的生成一个列表

  1. 变量 = [生成数据的规则 for 临时变量 in xxx]

每循环一次,就会创建一个数据

my_list = [i for i in range(5)]
print(my_list)  # [0, 1, 2, 3, 4]

my_list1 = ['hello' for i in range(5)]
print(my_list1)  # ['hello', 'hello', 'hello', 'hello', 'hello']
  1. 变量 = [生成数据的规则 for 临时变量 in xxx if xxx]

每循环一次,并且if条件为True,生成一个数据

my_list = [i for i in range(5) if i % 2 == 0]
print(my_list)  # [0, 2, 4]
  1. 变量 = [生成数据的规则 for 临时变量 in xxx for j in xxx]

第二个for 循环 循环一次,生成一个数据

my_list4 = [(i, j) for i in range(3) for j in range(3)]
print(my_list4)  # [(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]

补充: 字典推导式

变量 = {生成字典的规则 for 临时变量 in xx}
my_dict = {key: value for i in range(3)}

my_dict = {f"name{i}": i for i in range(3)}
print(my_dict)  # {'name0': 0, 'name1': 1, 'name2': 2}

my_dict = {f"name{i}": j for i in range(3) for j in range(3)}
print(my_dict)  # 3个因为字典中相同的key值会被替代value值,没有毓key值相同的才会往后追加值  {'name0': 2, 'name1': 2, 'name2': 2}
my_dict = {f"name{i}{j}": j for i in range(3) for j in range(3)}
print(my_dict)  # {'name00': 0, 'name01': 1, 'name02': 2, 'name10': 0, 'name11': 1, 'name12': 2, 'name20': 0, 'name21': 1, 'name22': 2}
目录
相关文章
|
2天前
|
索引 Python
Python 中寻找列表最大值位置的方法
本文介绍了Python中找列表最大值及其位置的三种方法:1) 使用内置`max()`和`index()`函数;2) 通过循环遍历;3) 利用`enumerate()`函数和生成器表达式。每种方法均附有示例代码,其中`enumerate()`方法在保证效率的同时代码更简洁。
22 2
|
2天前
|
存储 运维 数据挖掘
Python列表中每个元素前面连续重复次数的数列统计
Python列表中每个元素前面连续重复次数的数列统计
11 1
|
2天前
|
存储 JSON 数据库
Python中列表数据的保存与读取:以txt文件为例
Python中列表数据的保存与读取:以txt文件为例
14 2
|
2天前
|
存储 机器学习/深度学习 数据可视化
基于Python的数据分组技术:将数据按照1, 2, 3规则分为三个列表
基于Python的数据分组技术:将数据按照1, 2, 3规则分为三个列表
8 1
|
2天前
|
数据挖掘 计算机视觉 Python
Python实现对规整的二维列表中每个子列表对应的值求和
Python实现对规整的二维列表中每个子列表对应的值求和
7 0
|
2天前
|
存储 数据库 索引
Python新手常见问题一:列表、元组、集合、字典区别是什么?
本文针对Python编程新手常遇到的问题,详细阐述了列表(List)、元组(Tuple)、集合(Set)和字典(Dictionary)这四种数据结构的核心区别。列表是一种有序且可变的数据序列,允许元素重复;元组同样有序但不可变,其内容一旦创建就不能修改;集合是无序、不重复的元素集,强调唯一性,主要用于数学意义上的集合操作;而字典则是键值对的映射容器,其中键必须唯一,而值可以任意,它提供了一种通过键查找对应值的有效方式。通过对这些基本概念和特性的对比讲解,旨在帮助初学者更好地理解并运用这些数据类型来解决实际编程问题。
44 1
|
2天前
|
索引 Python 存储
Python 04 之变量【列表,元组,集合,字典,字符串】
Python 04 之变量【列表,元组,集合,字典,字符串】
62 0
Python 04 之变量【列表,元组,集合,字典,字符串】
|
2天前
|
索引 Python
Python中的列表、元组和字典各具特色
【5月更文挑战第11天】Python中的列表、元组和字典各具特色:列表是可变的,元组不可变,字典亦可变;列表和元组有序,字典无序(但在Python 3.7+保持插入顺序);元素类型上,列表和元组元素任意,字典需键不可变;列表用方括号[],元组用圆括号(),字典用大括号{}表示。列表不适合作字典键,元组可以。选择数据结构应依据实际需求。
22 2
|
2天前
|
Python
【Python 基础】列表(list)和元组(tuple)有什么区别?
【5月更文挑战第6天】【Python 基础】列表(list)和元组(tuple)有什么区别?
|
2天前
|
存储 索引 Python
【Python21天学习挑战赛】-列表 & 元组 & range
【Python21天学习挑战赛】-列表 & 元组 & range