如何使用静态方法初始化静态变量? [复制]
Posted
技术标签:
【中文标题】如何使用静态方法初始化静态变量? [复制]【英文标题】:How to initialise static variable using static method? [duplicate] 【发布时间】:2016-03-05 09:34:22 【问题描述】:class One:
i = One.get(9)
@staticmethod
def get(val):
pass
我尝试使用静态方法初始化静态变量,但是上面的代码引发了这个错误:
NameError: name 'One' is not defined
如何在 Python 中使用静态方法初始化静态变量?
【问题讨论】:
【参考方案1】:class One:
@staticmethod
def get(val):
pass
i = get.__func__(9)
虽然可能不是最 Pythonic 的方式。注意i
变量在get
的声明之后。由于@staticmethod
不能直接调用(如果这样做,您会收到一条消息),因此您必须改为执行底层函数(__func__
)。
【讨论】:
以上是关于如何使用静态方法初始化静态变量? [复制]的主要内容,如果未能解决你的问题,请参考以下文章