码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2020-02-08 17:56:59      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:--   data   comm   sed   面试   返回   word   迭代   uil   

匿名函数

  • 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、匿名函数、闭包

标签:--   data   comm   sed   面试   返回   word   迭代   uil   

原文地址:https://www.cnblogs.com/womenzt/p/12283983.html

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