python中的偏函数
偏函数:
当一个函数有很多参数时,调用者就需要提供多个参数。如果减少参数个数,就可以简化调用者的负担。比如,int()函数可以把字符串转换为整数,当仅传入字符串时,int()函数默认按十进制转换,但int()函数还提供额外的base参数,默认值为10。如果传入base参数,就可以做 N 进制的转换:
>>> 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)
但是有更简单的方法吗?functools.partial就是帮助我们创建一个偏函数的,不需要我们自己定义int2(),可以直接使用下面的代码创建一个新的函数int2:
'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
>>> import functools
>>> int2 = functools.partial(int, base=2)
>>> int2('1000000')
64
>>> int2('1010101')
85
functools.partial可以把一个参数多的函数变成一个参数少的新函数,少的参数需要在创建时指定默认值,这样,新函数调用的难度就降低了。
python中的偏函数相关推荐
- Python中的偏函数和函数柯里化
偏函数(partial)和函数柯里化(currying)是函数式编程中常用的技术.有时候我们在复用已有函数时可能需要固定其中的部分参数,这除了可以通过默认值参数来实现之外,还可以使用偏函数.例如有个函 ...
- python 偏函数_详细介绍Python中的偏函数
机器学习实战之Logistic回归 本文来自云栖社区官方钉群"Python技术进阶",了解相关信息可以关注"Python技术进阶". 本系列教程特点: 基于&l ...
- python中的偏函数:partical function
先直接说结论:偏函数functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数,调用这个新函数会更简单. 详细介绍: Python的functoo ...
- Python 中的闭包、匿名函数、decorator 装饰器与python的偏函数
Python中的闭包 def calc_sum(lst):def lazy_sum():return sum(lst)return lazy_sum 像这种内层函数引用了外层函数的变量(参数也算变量) ...
- python中symbols函数用法_Python中偏函数用法示例
本文实例讲述了Python中偏函数用法.分享给大家供大家参考,具体如下: python中偏函数 当一个函数有很多参数时,调用者就需要提供多个参数.如果减少参数个数,就可以简化调用者的负担. 比如,in ...
- 在python中、下列代码的输出是什么-python面试题
1.下面这段代码的输出结果是什么?请解释. def extendList(val, list=[]): list.append(val)returnlist list1= extendList(10) ...
- 在python中、下列代码的输出是什么-python面试题详细总结(附答案)
本篇文章给大家带来的内容是关于python面试题总结(附答案),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. CPS少儿编程网-Scratch_Python_教程_免费儿童编程学习平 ...
- 在python中、下列代码的输出是什么-Python 面试中 8 个必考问题
1.下面这段代码的输出结果是什么?请解释. def extendList(val, list=[]): list.append(val) return list list1 = extendList( ...
- Python中的partial便函数的理解
偏函数(Partial function)是通过将一个函数的部分参数预先绑定为某些值,从而得到一个新的具有较少可变参数的函数.在Python中,可以通过functools中的partial高阶函数来实 ...
最新文章
- 基于移动机器人的拣货系统研究进展
- Python包管理工具pip安装
- Repeater使用 AspNetPager分页控件
- struts2配置文件(简单)
- java中的堆、栈、方法区等比较
- 工作34:第三方登录
- 广州python平均薪资_11 月全国程序员平均工资出炉,看看的你得薪资跟上平均水平了吗。...
- 教资支付显示找不到服务器,教师资格证报名支付的问题,点了支付总是找不到服..._教师资格考试_帮考网...
- ssh localhost报错解决:ubuntu@localhost: Permission denied (publickey).
- iOS中 语音识别功能/语音转文字教程详解
- acdream 1201 SuSu's Power dp
- SAPGUI 里 F1 功能键的用法专题讲解试读版
- 6.6 PowerBI系列之DAX函数专题 -调节器TREATAS动态建立关系
- PHP中的网络编程 -- Socket篇
- 【Linux】通过Mac终端连接虚拟机(ssh root@192.168.31.230)
- 渗透测试——joker靶场漏洞复现
- 【漏洞挖掘】QQ钓鱼网站实战渗透
- 在歌唱比赛中,共有10位评委进行打分(0-100分的区间),在计算歌手得分时, 去掉一个最高分,去掉一个最低分,然后剩余的8位评委的分数进行平均, 就是该选手的最终得分。输入每个评委的评分,求某选
- Access denied for user 'mysql用户名'@'主机或IP' (using password: YES)'
- 跌倒自动检测雷达的应用