它象征着结束位置唯一参数,参数,你不能作为关键字参数使用。在Python 3.8之前,此类参数只能在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代码。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)