Python 偏函数 partial function

1 import functools
2 int2 = functools.partial(int, base=2)
3 print(int2(‘100‘))
4
5
6 max2 = functools.partial(max, 10)
7 print(max2(2,6,0,8))

  functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数,调用这个新函数会更简单。

  创建偏函数时,实际上可以接收函数对象、*args和**kw这3个参数。

  前述代码中,base=2,相当于把int()函数中的关键字参数base固定为2

  而对于max()函数,实际上会把10作为*args的一部分自动加到左边。

  当函数参数太多时,可通过functools.partial封装一个新函数。

原文地址:https://www.cnblogs.com/mofei004/p/9418876.html

时间: 2024-10-11 06:32:14

Python 偏函数 partial function的相关文章

Scala之偏函数Partial Function

本文原文出处: http://blog.csdn.net/bluishglc/article/details/50995939 严禁任何形式的转载,否则将委托CSDN官方维护权益! 从使用case语句构造匿名函数谈起 在Scala里,我们可以使用case语句来创建一个匿名函数(函数字面量),这有别于一般的匿名函数创建方法.来看个例子: scala> List(1,2,3) map {case i:Int=>i+1} res1: List[Int] = List(2, 3, 4) 这很有趣,ca

【Python functools.partial 偏函数】 -- 2019-08-08 18:01:31

原文: http://106.13.73.98/__/124/ Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function).要注意,这里的偏函数和数学意义上的偏函数不一样. functools.partial可以帮助我们创建一个偏函数,如下示例: """自己定义的偏函数""" def int1(x, base=2): return int(x, base) print(int1('100000

【Python functools.partial 偏函数】 -- 2019-08-09 12:09:26

原文: http://106.13.73.98/__/124/ Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function).要注意,这里的偏函数和数学意义上的偏函数不一样. functools.partial可以帮助我们创建一个偏函数,如下示例: """自己定义的偏函数""" def int1(x, base=2): return int(x, base) print(int1('100000

【Python functools.partial 偏函数】 򟱾

原文: http://blog.gqylpy.com/gqy/349 " Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function).要注意,这里的偏函数和数学意义上的偏函数不一样. functools.partial可以帮助我们创建一个偏函数,如下示例: """自己定义的偏函数""" def int1(x, base=2): return int(x, base) print(in

python偏函数(functool.partail)

functool.partail 方法可以为一个函数生成偏函数 import functools def f(a,b,c,d): print a,b,c,d a='a' b='b' f1=functools.partial(f,a,b) f1('a','d') 这里函数f有a,b,c,d四个变量,通过functool.partail可以生成偏函数f1,f1运行的代码与f相同,只是相对于f,a,b两个参数是固定的了,每次调用f1时,只需要输入c,d两个参数. 可以以k=v的形式输入参数,可以自定义

Python functools.partial

def declare_consumer(self, consumer_cls, topic, callback): """Create a Consumer using the class that was passed in and add it to our list of consumers """ def _connect_error(exc): log_info = {'topic': topic, 'err_str': str(ex

python偏函数

python中functools.partial模块,可以用来定义偏函数,如: def func(x, y): return x+y result = func(2,10) print(result) 运行结果: 12 可以将带默认值的函数,使用functools.partial进行封装,封装后的函数叫做偏函数 def func(x, y, z): return x-y-z func2 = functools.partial(func, 5) result = func2(2,1) print(

Python 偏函数

int 函数可以把字符串转化为整数,当仅仅传入字符串时,int()函数默认按照十进制转换: print int("12345") #12345 int函数还提供额外的base参数,默认值为10,如果传入base参数,可以做N进制的转换 print int("12345",base=8) #5349 print int("12345",16) #74565 假设要转换大量的二进制字符串,每次都传入int(x, base=2)非常麻烦,于是,我们想到

Python中def function(*args)用法

Python中可用def function(): 创建一个自定义函数. 下面我将用代码解释def function(*args): 的用法 --- *args输入参数如何工作的: *args ```可以接受序列的输入参数.当函数的参数不确定时,可以使用 *args. #!/usr/bin/python # -*- coding: UTF-8 -*- def biggest_number(*args): print max(args) return max(args) def smallest_n