假设我有一个带有可选参数的初始值设定项
def __init__(self, seed = ...):
现在,如果没有指定参数,我想提供一个默认值。但是种子很难计算,所以我有一个类方法,它基于一些类变量来建议种子
MyClass.seedFrom(...)
我怎么能从那个地方叫它?如果我使用self
:
def __init__(self, seed = self.__class__.seedFrom(255)):
在那一点上我完全不知道什么是自我。如果我直接使用类名(我讨厌这样做):
def __init__(self, seed = MyClass.seedFrom(255)):
它抱怨说
name 'MyClass' is not defined
我也很有兴趣去学习Python的方法。我希望pythonic方法不是硬编码的东西,在默认情况下使其为零,然后检查它
如果您必须在init中执行此操作,并且希望seed方法位于类上,则可以将其设置为类方法,例如:
如果只需要调用
seedFrom
一次,可以在定义__init__
时调用。你知道吗相关问题 更多 >
编程相关推荐