class One:
i = One.get(9)
@staticmethod
def get(val):
pass
我尝试使用静态方法初始化静态变量,但上面的代码引发了这个错误:
NameError: name 'One' is not defined
如何在Python中使用静态方法初始化静态变量?
答案 0 :(得分:2)
class One:
@staticmethod
def get(val):
pass
i = get.__func__(9)
可能不是最蟒蛇的方式。请注意,i
变量位于get
声明之后。由于@staticmethod
不能直接调用(如果你这样做,你会收到一条消息),你必须改为执行底层函数(__func__
)。