当前位置: 首页 > article >正文

Python函数关键字参数及用法

在定义 Python 函数时可定义形参(形式参数的意思),这些形参的值要等到调用时才能确定下来,由函数的调用者负责为形参传入参数值。简单来说,就是谁调用函数,谁负责传入参数值。

Python 函数的参数名不是无意义的,Python 允许在调用函数时通过名字来传入参数值。因此,Python 函数的参数名应该具有更好的语义,这样程序可以立刻明确传入函数的每个参数的含义。

按照形参位置传入的参数被称为位置参数。如果使用位置参数的方式来传入参数值,则必须严格按照走义函数时指定的顺序来传入参数值;如果根据参数名来传入参数值,则无须遵守定义形参的顺序,这种方式被称为关键字(keyword)参数。例如如下程序:

# 定义一个函数
def girth(width , height):
    print("width: ", width)
    print("height: ", height)
    return 2 * (width + height)
# 传统调用函数的方式,根据位置传入参数
print(girth(3.5, 4.8))
# 根据关键字参数来传入参数
print(girth(width = 3.5, height = 4.8))
# 使用关键字参数时可交换位置
print(girth(height = 4.8, width = 3.5))
# 部分使用关键字参数,部分使用位置参数
print(girth(3.5, height = 4.8))

上面程序定义了一个简单的 girth() 函数,该函数包含 width、height 两个参数,该函数与前面定义的函数并没有任何区别。

接下来在调用该函数时,既可使用传统的根据位置参数来调用(如上面程序中第 7 行代码所示),也可根据关键字参数来调用(如上面程序中第 9 行代码所示),在使用关键字参数调用时可交换参数的位置(如上面程序中第 11 行代码所示〕,还可混合使用位置参数和关键字参数(如上面程序中第 13 行代码所示)。

需要说明的是,如果希望在调用函数时混合使用关键字参数和位置参数,则关键字参数必须位于位置参数之后。换句话说,在关键字参数之后的只能是关键字参数。例如如下代码是错误的:

# 位置参数必须放在关键字参数之前,下面代码错误
print(girth(width = 3.5, 4.8))

运行上面代码,将会提示如下错误:

SyntaxError: positional argument follows keyword argument

http://www.kler.cn/a/152818.html

相关文章:

  • Spring简单的存储和读取
  • 【蓝桥杯选拔赛真题25】C++两个数比大小 第十三届蓝桥杯青少年创意编程大赛C++编程选拔赛真题解析
  • 数字电源为什么一般用DSP控制,而不能用普通的单片机?
  • OpenStack-train版安装之安装Keystone(认证服务)、Glance(镜像服务)、Placement
  • Scan Context / Scan Context ++ 论文和源码阅读
  • 西南科技大学模拟电子技术实验一(常用电子仪器的使用及电子元器件的识别)预习报告
  • C++相关闲碎记录(2)
  • ubuntu离线安装包下载和安装
  • Linux安全配置
  • Windows核心编程 远程线程注入
  • 【Redis缓存】RedisTemplate如何获取符合要求的key,批量获取key
  • Binlog vs. Redo Log:数据库日志的较劲【基础】
  • C++模板—函数模板、类模板
  • 道可云元宇宙每日资讯|智慧旅游发展大会暨智慧旅游示范展示活动在南京举办
  • *a++、*++a、(*a)++的运算顺序
  • STDP突触设计(一)
  • 浅学指针(4)函数指针数组和qsort的使用
  • MySQL的函数
  • 西工大网络空间安全学院计算机系统基础实验一(61分答案)
  • NC56 XML 报文校验出错一例