我们该如何理解这个函数签名?
我们应该如何解读这个函数签名?
class MyObject:
def get_context_data(self, *, object_list = ..., **kwargs):
context = super().get_context_data()
我的意思是,既有 *,又有省略号 ...,它们都被分配给 object_list。
据我所知,这看起来像是若干个必需的定位参数(未命名),然后是一个名为 object_list 的参数,后面的实现再来。这样对吗?
解决方案
它意味着这个方法仅接受关键字参数(因为 *),具体来说,名为 object_list 的一个关键字参数,类型未知,默认值为 ...,这可以表示任何东西,再加上任意数量的其他关键字参数(**kwargs)。
作者想让 ... 表示什么,谁也说不准。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。