python偏函数partial用法
作者:Silent丿丶黑羽 发布时间:2023-09-24 22:25:06
标签:python,偏函数,partial
1、什么是偏函数partial
python中提供一种对于函数固定属性的函数
2、偏函数的作用
把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数
3、偏函数的语法
使用偏函数必须先导入from functools import partial
函数格式:partial(func, *args, **kwargs)
func
:代表函数名*args
:func
函数的不定长参数**kwargs
:func
函数的关键字参数
4、案例
案例1
from functools import partial
bin2dec = partial(int, base=2) # 把 int 的转换设为二进制了,这里 base 是 int 函数表示进制的参数。
print(bin2dec('0b10001') ) # 17
print(bin2dec('10001')) # 17
hex2dec = partial(int, base=16) # 把 int 的转换设为16进制
print(hex2dec('0x67')) # 103
print(hex2dec('67')) # 103
案例2
partial_max = partial(max, 100)
print(partial_max(1, 2, 99)) # 100
上面是给max()
函数设定了一个默认参数100
,返回一个新函数,当我们传入参数(1, 2, 99)
实际上参数中还有一个默认值100
,相当于(100, 1, 2, 99)
,所以得出的最大值为100
偏函数的这些应用看似简单,用途却很大,可以很好的执行DRY
原则,节省编程成本。
来源:https://www.cnblogs.com/jiakecong/p/14716469.html


猜你喜欢
- 以下面的代码为例import osos.system(“ping www.baidu.com”)在pycharm界面运行后会显示乱码,如下图
- 套接字socket套接字(socket)是计算机之间进行通信的一种技术,它允许不同主机上的进程之间进行数据交换。在Python中,我们可以使
- #覆盖覆盖:在继承关系中,子类实现了与基类同名的方法,在子类的实例调用该方法时,实例调用的是子类的覆盖版本。通俗的讲,就是小明继承了他⑧的自
- 如下所示:node2:/django/mysite/blog#cat views.py1,# -*- coding: utf-8 -*-fr
- 1.文件介绍python操作文件1.1python文件的基本操作打开文件关键字open语法格式:open('文件路径',
- 本文为大家分享了mysql 8.0.15 winx64解压版安装配置方法,供大家参考,具体内容如下本地测试需要,安装MySQL最新版本,中间
- 论坛上看到有人问ASP是否可以定时触发事件,我就顺便做了一个玩玩。其实做这个的原理是很简单的,只是我们当时没有仔细的去想想该怎么实现,我这里
- 最常见的XML数据类型有:Element, Attribute,Comment, Text. &nbs
- 脚本1:这两天用python写了一个删除指定目录下过期时间的脚本。也可能是我初学python,对python还不够熟习,总觉得这个脚本用sh
- 除了使用pycharm外,还可使用vscode来操作pyqt,方法如下:1. 在vscode中配置相关的pyqt的相关根据自己实际情况修改第
- 本文实例为大家分享了python实现抠图的具体代码,供大家参考,具体内容如下其中使用了opencv中的grabcut方法直接上代码# enc
- 1.排序示例表内容见此篇文章Mysql支持数据排序操作,例如,现在我们按照工资从小到大进行排序操作:mysql> select ena
- 本文实例为大家分享了JS作用域链的相关内容,供大家参考,具体内容如下1、所有全局变量和函数都是作为window对象的属性和方法创建的。2、在
- MyISAM:默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。注意,通过更改 STORAGE_
- 前言之前提交的github copilot技术预览版申请,今天收到准入邮件,于是安上试一试这个准备把我送去电子厂上班的copy a lot
- 最近开始学习Qt,结合之前学习过的caffe一起搭建了一个人脸识别登录系统的程序,新手可能有理解不到位的情况,还请大家多多指教。我的想法是用
- 本文实例讲述了Python异步编程之协程任务的调度操作。分享给大家供大家参考,具体如下:我们知道协程是异步进行的,碰到IO阻塞型操作时需要调
- 前言TestSuite一直是unittest的灵活与精髓之处,在繁多的测试用例中,可以任意挑选和组合各种用例集,比如smoke用例集、lev
- 在web.config文件中添加<connectionStrings><add name="SQLConnect
- 本文实例为大家分享了js实现带积分的弹球小游戏的具体代码,供大家参考,具体内容如 * :如果小球与底部方块的角碰撞,积分可能有些许bug<