一、列表推导式
格式:[表达式 for 变量 in 旧列表] 或 [表达式 for 变量 in 旧列表 if 条件]
names = ['a','s','lucy','jason','hh']
# 过滤掉小于等于3的人们
result = [name for name in names if len(name)>3]
print(result)
result = [(x,y) for x in range(5) if x%2==0 for y in range(10) if y%2 !=0]
print(result)
二、if...else...的列表推导式
格式:[表达式 if 表达式 else 表达式 for 变量 in 旧列表]
dict1 = {"name":'tom','salary':5000}
dict2 = {"name":'lucy','salary':8000}
dict3 = {"name":'jack','salary':4500}
dict4 = {"name":'lily','salary':3000}
list1 = [dict1,dict2,dict3,dict4]
# if薪资大于5000加200,低于等于5000加500
newlist = [employee['salary']+200 if employee['salary']>5000 else employee['salary']+500 for employee in list1]
print(newlist)
三、集合推导式{}
格式:{x for x in list if 表达式}
names = ['a','s','lucy','jason','hh']
set1 = {x for x in names if len(x)>3}
print(set1)
四、字典推导式
格式:{value:key for key,value in dict.items()}