码迷,mamicode.com
首页 > 其他好文 > 详细

10-匿名函数

时间:2020-05-16 12:36:26      阅读:50      评论:0      收藏:0      [点我收藏+]

标签:env   list   turn   运行   内部函数   values   --   匿名   key   

 1 #视频2  匿名函数
 2 li =[1,2,3,4,5,6,7,8]
 3 # def fun(n):
 4 #     if n>4:
 5 #         return n
 6 #
 7 # aa =filter(fun,li)
 8 aa=filter(lambda n:n>4,li)
 9 print(list(aa))
10 
11 f=lambda x,y:x+y    #方式1
12 print(f(11,22))
13 
14 print((lambda x,y:x+y)(14,23))    #方式2

运行:

技术图片

 

 1 #视频3作用域
 2 a =11  #    全局变量
 3 def func():
 4     #global a
 5     a=222
 6 
 7     def fun2():
 8         nonlocal a  # 声明a的修改对外层函数有效
 9         a=999
10         print(内层函数fun2:,a)
11     fun2()
12     print(外层函数li面:%s % a)
13 
14 func()
15 print(函数外面:%s%a)

运行:

技术图片

 

 1 a=111
 2 def fun():
 3     # global a
 4     a=112
 5     print(外层调用fun2前:,a)
 6     def fun2():
 7         nonlocal a
 8         # a=113
 9         print(内层:,a)
10         a=a+1
11     fun2()
12     print(外层:,a)
13 
14 fun()
15 print(函数外:,a)

运行:

技术图片

 

 1 # 闭包三个条件:
 2 # 1,函数里面内嵌函数
 3 # 2,外层函数返回的是内层函数的函数名
 4 # 3,内部函数使用外部变量
 5 
 6 #闭包
 7 def func():
 8     a = 1
 9     def fun2():
10         c = 2*a
11         print(c)
12     return fun2
13 
14 # a = func()
15 # a()
16 
17 func()()

运行:

技术图片

 

1 #递归函数
2 def fun(n):
3     if n==1:
4         return n
5     else:
6         return n*fun(n-1)
7 
8 a = fun(6)
9 print(a)

运行:

ssh://pyvip@127.0.0.1:1234/home/pyvip/.virtualenvs/py3env/bin/python3 -u /home/pyvip/20180606py_case/基础/12递归函数4.py
720

 

作业:

 1 #作业--交换 元祖和字典  用zip
 2 tu = (1,2 ,3)
 3 dic = {a:11 ,b:22 ,c:33}
 4 
 5 def func(a,b):
 6     new_tu = tuple(b.values())
 7     new_dic = dict(zip(b.keys(),a))
 8 
 9     return new_tu,new_dic
10 
11 tu1,dic1 = func(tu,dic)
12 print(tu1)
13 print(dic1)

运行:

ssh://pyvip@127.0.0.1:1234/home/pyvip/.virtualenvs/py3env/bin/python3 -u /home/pyvip/20180606py_case/基础/12递归函数4.py
(33, 11, 22)
{‘c‘: 1, ‘a‘: 2, ‘b‘: 3}

 

10-匿名函数

标签:env   list   turn   运行   内部函数   values   --   匿名   key   

原文地址:https://www.cnblogs.com/tiantiancode/p/12899621.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!