Python:斜线在help()输出中意味着什么?

在闭括号前/,Python 3.4的help输出是什么意思range?

>>> help(range)

Help on class range in module builtins:

class range(object)

| range(stop) -> range object

| range(start, stop[, step]) -> range object

|

| Return a virtual sequence of numbers from start to stop by step.

|

| Methods defined here:

|

| __contains__(self, key, /)

| Return key in self.

|

| __eq__(self, value, /)

| Return self==value.

...

回答:

它象征着结束位置唯一参数,参数,你不能作为关键字参数使用。这些参数只能在C API中指定。

这意味着keyto 的参数__contains__只能通过position(range(5).__contains__(3))传递,而不能作为关键字参数(range(5).__contains__(key=3))传递,这可以通过pure-python函数中的position参数来完成。

另请参阅Argument Clinic文档:

要将所有参数标记为Argument Clinic中的“仅位置”,请/在最后一个参数之后单独添加一行,并使其与参数行缩进。

和(最近添加的)Python FAQ:

函数的参数列表中的斜杠表示该函数之前的参数仅是位置参数。仅位置参数是没有外部可用名称的参数。调用仅接受位置参数的函数后,参数将仅基于其位置映射到参数。

从3.8版开始,该语法现已成为Python语言规范的一部分,请参阅PEP 570 – 仅Python位置参数。在PEP 570之前,该语法已被保留以供将来将来包含在Python中,请参阅PEP 457- 仅位置参数的语法。

仅位置参数可以导致更清晰的API,使原本仅C的模块的纯Python实现更加一致且易于维护,并且由于仅位置参数需要很少的处理,因此它们可以导致更快的Python代码。

以上是 Python:斜线在help()输出中意味着什么? 的全部内容, 来源链接: utcz.com/qa/416733.html

回到顶部