当前位置: 代码迷 >> 综合 >> Python cookbook functions
  详细解决方案

Python cookbook functions

热度:29   发布时间:2023-11-05 19:24:12.0

2只接受关键字参数的函数

函数的某些参数强制使用关键字参数传输,将强制关键字参数放到某个*参数或者单个*后面

def recv(maxsize,*,block):'Receives a message'pass
def minium(*values,clip=None):m=min(values)if clip is not None:m=clip if clip>m else mreturn m
minium(1,5,2,-5,10)

3给函数参数增加元信息

def add(x:int,y:int)->int:return x+y
add('a','b')

函数注解只存储在__annotations__中

4返回多个值的函数

return 一个元组就可以刻,return x,y,z这种返回的是一个元组

5定义有默认参数的函数

def spam(a,b=42):print(a,b)

**注意:use默认参数的时候要使用None,True,False等不会改变的默认参数,要使用if b is None:这种使用if not None会使长度为零的列表,tuple,和元组被误传进来...

7lamdba函数都是在使用的时候赋值,如果想让给某个匿名函数在定义时就捕获到值,可以将那个参数值定义成默认参数

8减少可调用对象的参数个数

由于参数太多导致调用失败

functools.partial(function(arg1,arg2...),arg3)函数

def apply_async(func,args,*,callback):#Compute the resultresult=func(*args)#Invoke the callback with the resultcallback(result)