Python-内置函数1匿名函数闭包

Posted we我们

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-内置函数1匿名函数闭包相关的知识,希望对你有一定的参考价值。

匿名函数

  • lambda x:x

  • 定义函数的关键字

  • x: 形参 可以写多个,也可以不写

  • :x 返回值 必须写,只能写一个数据类型

内置函数(2)

  • 字典创建新简便方法:

    • # dict(k=1)
       # dict([(1,2)])
       # dict(**dic1,**dic2)
       
  • print()
    sep:每个元素的分割   默认是空格
    end:print语句的结束语句   默认是n
  • sum()求和  可迭代对象容器,容器的元素必须是数字
    sum([1,2,34,5,6,7],100)  指定开始位置的值
  • abs()绝对值
  • dir()查看当前对象的所有方法
  • format()  >(向右对齐) <(向左对齐) ^(剧中) o(八进制) b(二进制) x(十六进制) d(十进制)
  • zip() 拉链--当长度不一致时选择最短的进行合并
    面试题:
    dict(zip(list1,list2))
  • reversed() 反转
  • filter()  过滤  函数名(指定过滤规则),可迭代对象
  • map()  映射  函数名(对每个元素执行的方法),可迭代对象
  • sorted()  可迭代对象,key=制定规则   默认为升序
  • max()  可迭代对象,key=指定规则
  • min()  可迭代对象,key=制定规则
  • reduce  累计算

什么是闭包?

  • 在嵌套函数内,使用(非本层变量)和非全局变量就是闭包

def func():
   a = 1
   def foo():
       print(a)
   print(foo.__closure__)   #判断是不是闭包
?
func()
  • 闭包的作用:

    • 1.保护数据的安全性

    • 2.装饰器

def wrapper(a,b):
   def inner():
       print(a)
       print(b)
   inner()
   print(inner.__closure__)
a = 1
b = 2
wrapper(11,22)
?
# 11
# 22
# (<cell at 0x00000000021484F8: int object at 0x000000005DCD81B0>, <cell at 0x0000000002148528: int object at 0x000000005DCD8310>)
?

 

以上是关于Python-内置函数1匿名函数闭包的主要内容,如果未能解决你的问题,请参考以下文章

13 练习题:匿名函数 内置函数Ⅱ 闭包

内置函数,匿名函数与闭包

内置函数 匿名函数 闭包 13

Python之路day13-内置函数_lambda_闭包

python_005_匿名函数,闭包函数,递归函数

python 函数-作用域-匿名函数-闭包-装饰器