【发布时间】:2022-11-17 12:46:55
【问题描述】:
我最近从 Java 转向 Python 进行开发,仍然不习惯 Python 编程的一些隐含性。
我有一个定义了一些类变量的类,如何在 Python 的方法中访问类变量?
class Example:
CONSTANT_A = "A"
@staticmethod
def mymethod():
print(CONSTANT_A)
上面的代码会给我错误消息:Pylance 的 "CONSTANT_A" is not defined"。
我知道我可以使用 self.CONSTANT_A 完成这项工作,但 self 指的是对象,而我试图直接访问类变量(特别是常量)。
问题
如何在 Python 中直接访问类变量而不是通过对象?
【问题讨论】:
-
IIRC,在 Java 中,类方法称为静态方法,对吗?如果这让你感到困惑,请查看
@classmethodvs@staticmethodin Python,也许还有Meaning of@classmethodand@staticmethodfor beginner [duplicate] -
对于对这个问题投反对票的人,您是否介意给出反对票的理由而不是投票然后消失?即使您的反对票是合理的,在没有看到任何解释的情况下,任何人怎么能从中改进呢?
标签: python class variables scope