首页 > 软件开发 > PYTHON >

如何使用python函数function中的关键字实参

来源:互联网 2023-03-16 19:17:32 285

python函数中,直接写在括号里的参数称为位置参数,使用时位置跟个数都必须一致,这在有些时候不太便利。为了解决参数位置对函数调用的影响,我们可以使用关键字实参代替。ktE办公区 - 实用经验教程分享!

1python函数的定义及使用ktE办公区 - 实用经验教程分享!

如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

工具/原料

  • python3
  • jupyter notebook

一、位置参数的缺点

  • 1

    python函数中最简单的参数形式是位置参数,但这种位置参数在使用过程中位置必须一致。如果位置参数位置不一致的话,得到的结果不同。代码示例如下:ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    def funcA(x,y):ktE办公区 - 实用经验教程分享!

    print(x 2*y)ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    funcA(1,2) #相当于x=1,y=2ktE办公区 - 实用经验教程分享!

    funcA(2,1) #相当于x=2,y=1ktE办公区 - 实用经验教程分享!

    如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

  • 1本页面未经授权抓取自百度经验
  • 二、关键字参数

  • 1

    1、使用关键字参数向函数传递参数。ktE办公区 - 实用经验教程分享!

    关键字参数是指在调用时,函数括号里以等号的形式传递参数。代码示例如下:ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    def funcA(x,y):ktE办公区 - 实用经验教程分享!

    print(x 2*y)ktE办公区 - 实用经验教程分享!

    funcA(x=1,y=2) ktE办公区 - 实用经验教程分享!

    如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

  • 2

    2、关键字参数与位置无关。ktE办公区 - 实用经验教程分享!

    关键字参数不同于位置参数的最大特点就是传递参数时位置不会影响结果。为了避免参数位置产生的影响,我们可以使用关键字实参来传递参数。代码示例如下:ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    def funcA(x,y):ktE办公区 - 实用经验教程分享!

    print(x 2*y)ktE办公区 - 实用经验教程分享!

    funcA(x=1,y=2) ktE办公区 - 实用经验教程分享!

    funcA(y=2,x=1)ktE办公区 - 实用经验教程分享!

    如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

  • 3

    3、利用关键字实参设置默认值。ktE办公区 - 实用经验教程分享!

    关键字参数还有一个功能就是设置默认值,有默认值的参数调用时可不传入参数。代码示例如下:ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    def funcA(x,y=1):ktE办公区 - 实用经验教程分享!

    print(x 2*y)ktE办公区 - 实用经验教程分享!

    funcA(x=1) #没有给y传递参数,调用函数时使用y的默认值ktE办公区 - 实用经验教程分享!

    如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

  • 4

    3、利用关键字实参设置默认值。ktE办公区 - 实用经验教程分享!

    有默认值的参数调用若传入参数,新参数会替换掉默认值。代码示例如下:ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    def funcA(x,y=1):ktE办公区 - 实用经验教程分享!

    print(x 2*y)ktE办公区 - 实用经验教程分享!

    funcA(x=1,y=2) #给y传递了新的参数会替换掉默认值ktE办公区 - 实用经验教程分享!

    如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

  • 5

    4、利用关键字参数设置可变数量的参数。ktE办公区 - 实用经验教程分享!

    在使用函数过程中,我们往往希望参数个数不要定死,而能根据情况稍做改动。比如对于一个保存外国人名称的函数,有些人名有中间名,有些人名则没有,那么我们就可以利用关键字参数,将中间名默认为空,这样如果调用时不传入这个参数则只有2个参数,如果调用时传入这个参数则有3个参数。代码示例如下:ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    def funcA(first_name,last_name,middle_name=""):ktE办公区 - 实用经验教程分享!

    full_name = first_name " " middle_name " " last_namektE办公区 - 实用经验教程分享!

    print(full_name.title())ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    funcA("albert","einstein")ktE办公区 - 实用经验教程分享!

    funcA("thomas","edison","alva")ktE办公区 - 实用经验教程分享!

    如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

    如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

  • 6

    5、关键字参数需放在位置参数后面。ktE办公区 - 实用经验教程分享!

    有python中,位置参数跟关键字参数是可以混用的。但需要注意的是,关键字参数一定要放在位置参数后面,否则会报错。代码示例如下:ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    ktE办公区 - 实用经验教程分享!

    def funcA(first_name,middle_name="",last_name):ktE办公区 - 实用经验教程分享!

    full_name = first_name " " middle_name " " last_namektE办公区 - 实用经验教程分享!

    print(full_name.title())ktE办公区 - 实用经验教程分享!

    如何使用python函数function中的关键字实参?ktE办公区 - 实用经验教程分享!

  • 注意事项

    • 1、有问题可点击提问交流~
    • 2、如果觉得经验不错,欢迎点赞、投票、收藏以及分享哦~

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!ktE办公区 - 实用经验教程分享!


    标签: python

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码