l =[1,3,4,5,6,7,8,9]
new_l =[]for i in l:if i >4:
new_l.append(i)print(new_l)**列表生成式:两种写法**# 相当于上边的代码# i 是条件成立的值,循环判断条件,条件成立的话就把值加到列表里边去
new_l =[i for i in l if i >4]# 如果不加if判断,相当于所有条件为True, 相当于if True
new_l =[i for i in l]print(new_l)
字典生成式
keys =["name","age","sex"]
dic ={key:Nonefor key in keys}print(dic)#有if条件的
dic ={key:Nonefor key in keys if key !="sex"}print(dic)
集合生成式
keys =["name","age","sex"]set={key for key in keys}print(set)#有if条件的set={key for key in keys if key !="sex"}print(set)
生成器表达式(生成器生成式)
g =(i for i inrange(10)if i >3)print(g)# <generator object <genexpr> at 0x000001BAA757DBA0># g是一个生成器# 此时g内部一个值也没有# 调用一个next()就会生成一个值print(next(g))print(next(g))print(next(g))
l = [1, 3, 4, 5, 6, 7, 8, 9]new_l = []for i in l: if i > 4: new_l.append(i)print(new_l)# 相当于上边的代码# i 是条件成立的值,循环判断条件,条件成立的话就把值加到列表里边去new_l =[i for i in l if i > 4]print(new_l)...