1.列表推导式
1.1创建一个列表:1-10的平方
普通做法:
list_data = []
for i in range(1, 11):
list_data.append(i * i)
print(list_data)
使用‘列表推导式:
list_data = [i * i for i in range(1, 11)]
print(list_data)
列表推导式的表达式:
表达式;
[for 临时变量 in iterable 过滤]
1.2
# color: red, blue, black # 列表
# size: S, M, L #列表
# (red, S), (red, M),(red, L), (blue, S)....(black, L)
color = ["red", "blue", "black"]
size = ["S", "M", "L"]
clothes_list = [(i, j) for i in color for j in size]
print(clothes_list)
# [(i, j) for i in color for j in size]
# 结果是一个列表:[]
# 列表中每一个元素的结构:(color, size)
# 类似嵌套循环
# for i in color # 每次拿到一个i —> red
# 内层循环执行三次
# for j in size # 每次拿到一个j -> S j-> M , j-> L
输出:
1.3从[1-10]中过滤出奇数
# [1-10] => 里边过滤出奇数
list_data = []
for i in range(1, 11):
if i % 2 != 0:
list_data.append(i)
print(list_data)
# [表达式 for 临时变量 in iterable 过滤]
list_data = [i for i in range(1, 11) if i % 2 != 0]
print(list_data)
输出:
1.1.4if else
# if else表达式
# value1 if condtion else value2
# 如果条件为真 返回value1,如果条件为假,返回value2
test = 5
data = "奇数" if test % 2 else "偶数"
print(data)
list_data = [i if i % 2 else 0 for i in range(1, 11)]
print(list_data)
输出:
2.字典推导式
字典推导式 {key: value}
#[表达式:表达式 for 临时变量 in iterable 过滤]
dict_data = {i * i: i * i * i for i in [1, 2, 3]}
print(dict_data)
输出: