python偏函数理解_python进阶路线图

python偏函数理解_python进阶路线图什么是偏函数partialpython中提供一种对于函数固定属性的函数偏函数的作用把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数偏函数的语法使用偏函数必须先导入from

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

什么是偏函数partial

python中提供一种对于函数固定属性的函数
 

偏函数的作用

把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数
 

偏函数的语法

使用偏函数必须先导入from functools import partial
函数格式:partial(func, *args, **kwargs)

  • func:代表函数名
  • *args:func函数的不定长参数
  • **kwargs:func函数的关键字参数
     

案例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://javaforall.net/164943.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月28日 下午6:16
下一篇 2022年7月28日 下午6:16


相关推荐

  • java四舍五入(保留两位小数)[通俗易懂]

    java四舍五入(保留两位小数)[通俗易懂]1.最简单的方法:floata=123.4567f;这里的100就是2位小数点,如果要其它位,如4位,这里两个100改成10000floatb=(float)(Math.round(a*100))/100;doublef=111231.5585;BigDecimalb=newBigDecimal(f);doublef1=b.setScale(2,BigDecimal.ROUND_HALF_UP

    2022年5月16日
    45
  • 视音频数据处理入门:UDP-RTP协议解析「建议收藏」

    视音频数据处理入门:UDP-RTP协议解析「建议收藏」本文介绍网络协议数据的处理程序。网络协议数据在视频播放器中的位置如下所示。本文中的程序是一个UDP/RTP协议流媒体数据解析器。该程序可以分析UDP协议中的RTP包头中的内容,以及RTP负载中MPEG-TS封装格式的信息。通过修改该程序可以实现不同的UDP/RTP协议数据处理功能。原理MPEG-TS封装格式数据打包为RTP/UDP协议然后发送出去的流程如下图所示。图中首先每7个MPEG-TSP

    2022年6月28日
    29
  • Idea中创建maven项目(超详细)

    Idea中创建maven项目(超详细)Idea 中创建 maven 项目提示 前提条件时 maven 已经安装好 并且环境变量也配置完成 maven 没安装好或者环境变量没有配置好的请参考我上一篇文章 maven 的安装和配置文章目录 Idea 中创建 maven 项目前言一 使用步骤 1 在 Idea 中配置 maven2 在 Idea 中创建 maven 项目 3 完善 maven web 项目模板总结前言测试 maven 版本 maven 3 6 3 jdk 版本 1 8 一 使用步骤 1 在 Idea 中配置 maven 1 打开 Idea 点击 File 然后点击 Sett

    2026年1月28日
    3
  • OpenClaw的底层引擎,竟是一个“退休”游戏开发者写的

    OpenClaw的底层引擎,竟是一个“退休”游戏开发者写的

    2026年3月13日
    2
  • shell 循环语句[通俗易懂]

    shell 循环语句[通俗易懂]循环语句:for语法结构:1、列表循环forvariablein{list}docommand…doneforvariableinvar1var2var3..docommand…done2、非列表循环forvariabledocommand..done3、类C风

    2022年7月24日
    13
  • java 创建线程的三种方式、创建线程池的四种方式

    java 创建线程的三种方式、创建线程池的四种方式概要 java 创建线程的三种方式 继承 Thread 类创建线程类 实现 Runnable 接口 通过 Callable 和 Future 创建线程 java 创建线程池的四种方式 newCachedThr 创建一个可缓存的线程池 如果线程池长度超过处理需求 可灵活回收空闲线程 若无可回收 则新建线程 newFixedThre

    2026年3月26日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号