python基础知识(四)函数
函数:
deftest(x):'''计算数值结果:paramx:输入值int:return:返回值'''y=2*x+1returny#参数组:**字典*列表deftest(x,*args):print(x)print(args)test(1,2,3,4,5)#全局变量变量名全部大写name="vivid"#全局变量defchange_name():#globalname#修改为全局变量name="rain"#局部变量print("chang_name",name)change_name()#递归defcalc(n):print(n)time.sleep(1)ifint(n/2)==0:returnnreturncalc(int(n/2))calc(10)#匿名函数#lambdax:x+1defcalc(x):returnx+1res=calc(10)func=lambdax:x+1res1=func(10)print("res1",res1)name="rain"defchang_name(x):res=name+"_sb"returnresres=chang_name(name)#print(res)fname=lambdax:name+"_bow"print(fname(name))#把函数当作参数传给另一个函数deffoo(n):print(n)defbar(name):print("mynameis%s"%name)foo(bar("rain"))#map函数defadd_one(x):returnx+1defreduce_one(x):returnx-1defmap_test(func,array):ret=[]foriinarray:cc=func(i)ret.append(cc)print(ret)returnretmap_test(add_one,num_l)res=map(lambdax:x+1,num_l)print("内置函数map,处理结果",res)print(list(res))print("有名函数",list(map(reduce_one,num_l)))movic_people=["alex","sb_11","sb_22","sb_33","hello","sb_344"]ret=[]#defsb_show(n):#returnn.startswith("sb")#defsb_start(n):#returnn.endswith("sb")#deffilter_test(func,array):#ret=[]#forpinarray:#ifnotfunc(p):#ret.append(p)#returnret#二#lambdan:n.startswith("sb")#res=filter_test(lambdan:n.startswith("sb"),movic_people)#print(res)#filter函数print(list(filter(lambdan:n.startswith("sb"),movic_people)))#reduce函数fromfunctoolsimportreduceres=0num1=[1,2,3,4,5,6,100]#fornuminnum1:#res+=num#print(res)#defreduce_test(array):#res=0#fornuminarray:#res+=num#returnres#print(reduce_test(num1))reduce(lambdax,y:x+y,num1,1)divmod(10,3)#分页:10:总数3:每页数量express='1+2*(3/3-1)-2'v=eval(express)print(v)#可hash的数据类型即不可变数据类型,不可hash的数据类型即可变数据类型name="vivid"print(hash(name))
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。