2022年8月31日文章:分部函数相关的源码解释及其示例

python中partial库的使用方法解析

2022年8月31日文章:分部函数相关的源码解释及其示例

更新时间是 2022 年 08 月 31 日 14 时 21 分 52 秒,作者是 IT 之一小佬。

这篇文章主要介绍了关于 python 中 partial 库的使用方法。文章围绕该主题展开了详细的内容讲解,具有一定的参考意义,感兴趣的小伙伴可以参考一下。

源码解释:

class partial:
具有给定参数部分应用的新函数
    and keywords.
    """

分部函数是基于另一个函数来创建函数的。它的作用是把值绑定到函数的参数(或者关键字参数)上,进而生成一个之前没有定义参数的可被调用的函数。

functools.partial 返回的是一个可调用的对象,这个对象是 partial 对象。使用它的方法是 partial(func,args,*kw)。在这个方法中,func 是必须要传入的,并且至少需要一个 args 或者 kw 的参数。

示例代码1:

from functools import partial
 
# 定义一个加法函数
def add(a, b, c):
    return a + b + c
# 定义分部函数,其中第一个参数已经固定
ret = partial(add, 6)
# 初始化前两个参数并打印
print(ret(2, 4))

运行结果:

示例代码2:

from functools import partial
 
# 定义一个求幂函数
def sq(a, b):
    return b ** a
# 求平方   分部函数   第一个参数已经确定
pingfang = partial(sq, 2)
# 求立方   分部函数   第一个参数已经确定
lifang = partial(sq, 3)
# 求5的平方
print(pingfang(5))
# 求5的立方
print(lifang(5))

运行结果:

示例代码3:

from functools import partial
import requests
 
def get_baidu(method, url):
使用 requests 库发起请求,请求的方法是 method,请求的 URL 是 url,然后将请求的响应赋值给 response 变量。
    return response.content
 
res 是通过调用 get_baidu 函数并传入参数 "get" 和 "https://www.baidu.com" 而得到的。
print(res)
把函数和参数封装在一个特定的变量名里,下一次执行的时候直接加上括号进行调用。
使用 get_baidu 函数,并传入参数 'get' 和 "https://www.baidu.com",将其赋值给 getBaidu
print(type(getBaidu))  # 
ret = getBaidu()
print(ret)

运行结果:

示例代码4:

from functools import partial
 
# 定义一个加减乘除的类
class Calculate(object):
md 包含“add”、“minus”、“multiplication”、“division”。
 
初始化自身,传入方法以及两个可选参数 num1 和 num2,num1 的默认值为 0,num2 的默认值也为 0。
        self.num1 = num1
        self.num2 = num2
        if method in self.md:
Calculate 中的 method 对应的函数被获取并赋值给了 func 。
            print(func)
            self.result = func(self)
 
    def add(self):
        return self.num1 + self.num2
 
    def minus(self):
        return self.num1 - self.num2
 
    def multiplication(self):
        return self.num1 * self.num2
 
    def division(self):
        return self.num1 / self.num2
 
add 等于 partial(Calculate, "add") ,即将 Calculate 函数中的部分操作指定为 "add" 。
“minus 等于对‘minus’进行 Calculate 操作得到的 partial”
乘法 = 部分(计算, "乘法")
Calculate 进行了部分的除法运算,即 division 。
 
print(add)
print(minus)
print(multiplication)
print(division)
 
print("*" * 100)
 
print(add(3, 5))
print(add(3, 5).result)
print(minus(3, 5).result)
打印乘法运算(3,5)的结果。
print(division(3, 5).result)

运行结果:

这篇关于 python 中 partial 库使用方法解析的文章到此介绍完毕。更多关于 python partial 库的内容,大家可以搜索脚本之家以前的文章,或者继续浏览下面的相关文章。希望大家以后能多多支持脚本之家!

你可能想看:
« 上一篇
下一篇 »

相关推荐

python爬虫教程PDF,Python爬虫书PDF

2026年09月02日

30阅读

外国教程python,python编程教学视频

2026年09月02日

25阅读

python简明教程沈洁元,python详细基础教程

2026年09月02日

21阅读

python库包教程,python 包

2026年09月02日

26阅读

python教程大全集,python教程600集

2026年09月02日

26阅读

python入门教程完整版,python零基础入门全套教程视频

2026年09月02日

22阅读