0

可能重复:
为什么需要在 Python 方法中显式添加“self”参数?

为什么一定要加上这个self参数

    def function(self):
4

2 回答 2

1

因为在类中定义方法时,它会自动创建一个描述符,将对象实例作为第一个参数传递。如果您想避免这种情况,请使用 @staticmethod 装饰器,或者只在类之外定义您的函数。

至于为什么以这种方式设计语言,在没有显式变量创建的情况下以其他方式使用语言是没有意义的。如果你做a=2,你怎么知道它应该是一个局部变量还是一个实例变量?此外,明确地传递它只是一个更优雅的设计。

于 2012-08-11T14:26:26.753 回答
0

显式优于隐式

于 2012-08-11T14:25:41.673 回答