【问题标题】:Where should instance variables in a class in Python be placed?Python 类中的实例变量应该放在哪里?
【发布时间】:2015-01-04 21:56:42
【问题描述】:

很明显,在 Python 中,类级别或静态变量既不在构造函数/方法中声明,也不通过“self”访问。 (this explains it better)。

但是,我对应该在类中声明/存储实例变量的位置感到困惑。

如果它们是通过不同的方法声明的,那么跟踪所有类的实例变量似乎很混乱并且可能很难,我想学习“Pythonic”的方式来做到这一点。是不是都在构造函数中声明并设置为Null,以后再修改?

谢谢!

【问题讨论】:

  • 似乎你的问题是answered on Programmers.SE
  • 如果您希望有实例变量,将它们放在 init 方法中是非常有意义的

标签: python oop python-2.7 python-3.x


【解决方案1】:

几件事:

  • 类属性通过self 访问。如果 python 没有在实例 self 上找到属性,它将开始搜索 type(self) 等。
  • 如果您认为将最常见的实例属性设置为 None 会提高清晰度,您应该在 __init__ 中执行此操作。

【讨论】:

    猜你喜欢
    • 2022-10-05
    • 1970-01-01
    • 2011-01-11
    • 2011-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-17
    • 2018-11-20
    相关资源
    最近更新 更多