在 Python 函数的参数列表中,斜杠(/) 的含义是什么?
函数参数列表中的斜杠表示该斜杠之前的参数是仅限位置参数。让我们首先在 Python 中查看一个带有参数的函数:
Python 中的函数
示例
这里,我们在 Python 中创建了一个带有参数 myStr 的基本函数:
# Creating a Function def demo(myStr): print("Car =: ",myStr) # function call demo("BMW") demo("Tesla")
输出
Car =: BMW Car =: Tesla
函数参数列表中的斜杠
如上所述,函数参数列表中的斜杠表示该斜杠之前的参数是仅限位置参数。
在调用接受仅限位置参数的函数时,参数将根据其位置唯一地映射到参数。
divmode() 函数
divmod() 函数是函数列表中斜杠的完美示例,即它接受仅限位置的参数,如下所示:
divmod(a, b, /)
上面,由于斜杠位于参数列表的末尾,因此参数 a 和 b 都是仅限位置的。
让我们使用 Python 中的 help() 函数打印 divmod() 的文档。
# Creating a Function def demo(myStr): print(help(divmod)) # function call 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() 不接受关键字参数。
广告