序列、内建函数和装饰器

序列

构成:能够被索引取值和切片取值的叫序列

高阶函数

组成:能调用其他函数的函数

map 函数

组成:map(func,*iterable)
作用:处理数据
返回值:map对象

list(map(lambda x:x+1,[1,2,3,4,5]))
map(lambda x,y:(x+1,y+1),[1,2,3,4,5],[2,3])
按最短的来

sorted

组成:sorted(iterable,key=func,reverse=False)
作用:排序
返回值:列表

enumerate 枚举

组成:enumerate(iterable[,start])
作用:按下表的返回值
返回值:enumerate对象

list(enumerate([1,2,3],start=2))

>>>[(2, 1), (3, 2), (4, 3)]

zip 打包

组成:zip(*iterable)
作用:打包函数
返回值:zip对象

list(zip(['a','b'],[1,2])
>>>[('a',1),('b',2)]

*zip解包函数,注意不能单独出现,需和zip一起出现

filter 删选

组成:filter(func,iterable)
作用:筛选数据
返回值:filter对象

list(filter(lambda x:x%2,[1,2,3]))
>>>[1,3]

reduce

组成:reduce(func,iterable[,initial])(是要操作的另外的值)
作用:处理数据
返回值:value

from functools import reduce
reduce(lambda x,y:x+y,range(1,101))
>>>5050

reverse 反序

  • reverse(iterable)
几种常见的内建函数:
max(iterable)			求最大值
sum(iterable) 			求和
min(iterable) 			求最小值
len(iterable) 			求长度
round()				四舍五入
注意奇下偶上的问题

装饰器

作用:在不改变原有类的情况下对类进行功能的添加
在实际工作的时候,不能改类
来源:是一种著名的设计模式。被用于有切片需求的场景
语法糖
@修饰符
系统会自动的把下一行的函数名作为参数传递
通用格式

def outer(flag):
	def décor(func):
		def inner(*args,**kwargs):
			if flag:
				之前操作的
				res=func(*args,**kwargs)
				之后要做的
				return res
		return inner
	return decor
@outer(flag)
def fun():
	print('a')
解释:真正的装饰器是décor,outer只是为了控制装饰器是否运行的程序

双层装饰器
解释:就是先第一个装饰器装饰玩之后,传递给第二个装饰器
装饰类
解释:相当于把类作为参数传进去
装饰装饰器
解释:就是把装饰器看做函数进行装饰
类作为装饰器
解释:其实就是对象最为装饰器,且把函数作为参数传递给类的对象
相当于调用类里面的call魔术方法

class A:	
	def __call__(self,args):
		self.args=args
		return self.inner
def inner(self):
		self.args()
@A()
def fun():
	print('aaa')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值