老王Python-进阶篇4-函数第四节
1、用lambda和filter完成下面功能:输出一个列表,列表里面包括:1-100内的所有偶数。(提示:可以用filter,lambda)
1 q=lambda x:x%2==0 2 print filter(q,range(1,101))
2 用位置匹配,关键字匹配,收集匹配(元组收集,字典收集)分别写4个函数,完成功能;
传递3个列表参数:[1,2,3],[1,5,65],[33,445,22]
返回这3个列表中元素最大的那个,结果是:445
1 def func1(list_1,list_2,list_3): 2 list_sum=list_1+list_2+list_3 3 return max(list_sum) 4 5 def func2(list_1='',list_2='',list_3=''): 6 list_sum=list_1+list_2+list_3 7 return max(list_sum) 8 9 def func3(*list_1): 10 list_sum=[] 11 for i in list_1: 12 for j in i: 13 list_sum.append(j) 14 15 return max(list_sum) 16 17 def func4(**list_1): 18 list_sum=[] 19 for i in list_1.values(): 20 for j in i: 21 list_sum.append(j) 22 23 return max(list_sum) 24 25 if __name__=='__main__': 26 print func1([1,2,3],[1,5,65],[33,445,22]) 27 print func2(list_1=[1,2,3],list_2=[1,5,65],list_3=[33,445,22]) 28 print func3([1,2,3],[1,5,65],[33,445,22]) 29 print func4(list_1=[1,2,3],list_2=[1,5,65],list_3=[33,445,22])
3、递归函数解释,用自己的话说明这个递归函数的工作流程。
1 def func(i): 2 if i <100: 3 sum=i+func(i+1) 4 return sum 5 return i 6 if __name__=='__main__': 7 a=int(raw_input('please input a number!\n')) 8 print 'the sum is ',func(a)