相关疑难解决方法(0)

Python - 应该在__init__中初始化所有成员变量

也许这更像是一个样式问题,而不是技术问题,但我有一个带有几个成员变量的python类,我想让它工作,以便在用户首次创建类的实例时初始化一些成员变量(即在__init__函数中)我希望从稍后将调用的成员函数的参数定义其他成员变量.所以我的问题是我应该初始化函数中的所有成员变量__init__(并将稍后定义的变量设置为虚拟值)或者在__init__函数中初始化一些变量,在稍后的函数中初始化一些变量.我意识到这可能很难理解,所以这里有几个例子.

此示例var3最初在__init__函数中设置为0 ,然后在my_funct函数中设置为所需的值.

class myClass(object):
   def __init__(self,var1,var2):
        self.var1=var1
        self.var2=var2
        self.var3=0

  def my_funct(self,var3):
       self.var3=var3
Run Code Online (Sandbox Code Playgroud)

并且在此示例中,var3没有在所限定的所有__init__功能

class myClass(object):
   def __init__(self,var1,var2):
        self.var1=var1
        self.var2=var2

  def my_funct(self,var3):
       self.var3=var3
Run Code Online (Sandbox Code Playgroud)

我认为任何一种方式都不会产生很大的不同(可能是内存使用量略有不同).但我想知道其中一个是否因为某些原因而优先于另一个.

python oop instance-variables

40
推荐指数
2
解决办法
2万
查看次数

标签 统计

instance-variables ×1

oop ×1

python ×1