前戏
movie_people = ["alex","charon","pluto","liu","sb","sb_250"] ret = []
for i in movie_people:
if not i.startswith("sb"):
ret.append(i) print(ret) 结果:
['alex', 'charon', 'pluto', 'liu']
前五分钟
movie_people = ["alex","charon","pluto","liu","sb","sb_250"] def filter_test(arrat):
ret = []
for i in arrat:
if not i.startswith("sb"):
ret.append(i)
return ret print(filter_test(movie_people)) 结果:
['alex', 'charon', 'pluto', 'liu']
十分钟
movie_people=['alex_sb','wupeiqi_sb','linhaifeng','yuanhao_sb']
def sb_show(n):
return n.endswith('sb') def filter_test(func,array):
ret=[]
for p in array:
if not func(p):
ret.append(p)
return ret res=filter_test(sb_show,movie_people)
print(res) 结果:
linhaifeng
十五分钟
movie_people=['alex_sb','wupeiqi_sb','linhaifeng','yuanhao_sb']
# def sb_show(n):
# return n.endswith('sb')
#--->lambda n:n.endswith('sb')
# :前面是参数,后面是返回值
def filter_test(func,array):
ret=[]
for p in array:
if not func(p):
ret.append(p)
return ret res=filter_test(lambda n:n.endswith('sb'),movie_people)
print(res) #filter函数
movie_people=['alex_sb','wupeiqi_sb','linhaifeng','yuanhao_sb']
print(filter(lambda n:not n.endswith('sb'),movie_people)) res=filter(lambda n:not n.endswith('sb'),movie_people)
print(list(res)) print(list(filter(lambda n:not n.endswith('sb'),movie_people))) 结果:
['linhaifeng']
<filter object at 0x7f9aa857b908>
['linhaifeng']
['linhaifeng']