Python函数参数列表中的斜杠(/)是什么意思?
在函数参数列表中,斜杠(/)表示其之前的参数是位置参数。我们先来看一个Python函数的示例,其中包含一个参数。
更多Python相关文章,请阅读:Python 教程
Python函数
示例
下面我们在Python中创建一个带有参数myStr的基本函数:
# 创建函数
def demo(myStr):
print("Car =: ",myStr)
# 调用函数
demo("BMW")
demo("Tesla")
输出
Car =: BMW
Car =: Tesla
函数参数列表中的斜杠(/)
如上所述,函数参数列表中的斜杠表示其之前的参数是位置参数。
调用接受位置参数的函数时,参数将根据它们的位置映射到相应的参数。
divmod()函数
divmod()函数是参数列表中斜杠的完美示例,即它仅接受位置参数,如下所示:
divmod(a, b, /)
在上面的示例中,由于斜杠在参数列表末尾,参数a和b均为位置参数。
现在,我们使用Python中的help()函数打印divmod()的文档。
# 创建函数
def demo(myStr):
print(help(divmod))
# 调用函数
demo("BMW")
demo("Tesla")
输出
Help on built-in function divmod in module builtins:
divmod(x, y, /)
Return the tuple (x//y, x%y). Invariant: div*y + mod == x.
None
现在,我们来看一下divmod()的示例。两个参数都是被除数和除数。
k = divmod(5, 2)
print(k)
输出
(2, 1)
参数列表末尾的斜杠表示参数均为位置参数。因此,如果我们使用关键字参数调用divmod(),则会引发错误。
divmod(a = 5, b = 2)
输出
在上面的示例中,发生错误,因为divmod()不接受关键字参数。