【Python】——偏函数partial

  • partial是Python的functools模块提供的函数,其主要作用是把一个函数的某些参数固定住(也就是设置默认值),返回一个新的函数,使得调用这个函数会更简单

  • 下面具体举例说明其用途

      int( )函数可以把字符串转换为整数,同时可以通过设置base参数,指定由十进制向不同进制转换
    
# 未指定base参数时,默认转换为十进制
>>> int('12345')
12345

# 八进制
>>> int('12345', base=8)
5349

# 十六进制
>>> int('12345', 16)
74565
  • 假设有大量需要进行转换的二进制字符串,每次都传入int(x, base=2)非常麻烦,此时,我们可能会想到定义一个int2()函数,默认把base=2传进去
def int2(x, base=2):
    return int(x, base)

>>> int2('1000000')
64
>>> int2('1010101')
85
  • 上述过程同样可以通过Python中提供的partial函数来实现
# 举例1:
int2 = functools.partial(int, base=2)

int2('10010')
# 相当于
kw = { base: 2 }
int('10010', **kw)

# 举例2:
max2 = functools.partial(max, 10)
max2(5, 6, 7)
# 相当于
args = (10, 5, 6, 7)
max(*args)

版权声明:本文为m0_45388819原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/m0_45388819/article/details/122765248