【发布时间】:2018-11-07 02:36:08
【问题描述】:
我想知道您认为如何从类中的函数访问类属性。我没有在 PEP8 中找到参考资料或关于它的热门问题。例如
class MyClass(object):
BAR = 1
def foo(self):
# Way A:
print(self.BAR)
# Way B:
print(MyClass.BAR)
通过“self”访问似乎是合理的,因为该属性属于同一个类,对于明显的同类引用的密切引用。 另一方面,通过类名本身的访问是清晰的,因为它是静态的,并且使使用的起源清晰,并且由于它与类的 name 配对,因此可以更加清晰。 p>
【问题讨论】:
-
self.BAR很酷,因为您可以重命名该类并且它仍然有效。缺点是你不能在静态/类方法中使用它。 -
为什么不
self.__class__.BAR? (stackoverflow.com/questions/25577578/…)
标签: python reference class-attribute