int('12345')
int2 = functools.partial(参数1,参数2,参数3)
参数1:函数对象,
参数2:*args 可变参数,接收tuple,list
参数3:*kw 关键字参数,接收dict
例如:
int2 = functools.partial(int,10,base=10)
参数1必填,参数2和参数3可省略,那就和原函数没区别了,因为参数1就是原函数,参数2就是可变参数,参数3为关键字参数,int自带关键字参数base,当不传为默认值,传入时必须以base=xxx的形式,对应原始的关键字,参数2传入的话会组装成tuple或list,再通过*args 传入int(*args)
个人理解大概就是这样的
感觉你说的不太对,int函数只有位置参数和关键字参数:int(str,**kw),没有可变参数,所以只能写成functools.partical(int,base=10)这种格式
int
int(str,**kw)
functools.partical(int,base=10)
楼主说得对,但是要改成
int2 = functools.partial(int,'10',base=10)
这样当调用int2(),即固定了原函数的的所有参数:字符串默认是10,其进制数默认是二进制。
关键字参数:**kw
Sign in to make a reply
付知妤
int('12345')
参数1:函数对象,
参数2:*args 可变参数,接收tuple,list
参数3:*kw 关键字参数,接收dict
例如:
参数1必填,参数2和参数3可省略,那就和原函数没区别了,因为参数1就是原函数,参数2就是可变参数,参数3为关键字参数,int自带关键字参数base,当不传为默认值,传入时必须以base=xxx的形式,对应原始的关键字,参数2传入的话会组装成tuple或list,再通过*args 传入int(*args)
个人理解大概就是这样的