【发布时间】:2018-12-20 03:31:00
【问题描述】:
有人能解释一下 Python 在类中创建对象期间管理内存管理的方式吗?
例如在java中我们只能声明成员变量并且初始化部分发生在构造函数中。这意味着构造对象时使用的内存。
但在 python 中,我们可以在 init 方法之外初始化一个类变量。这些数据存储在哪里?
【问题讨论】:
-
有点不清楚你指的是什么。您能否提供一些您想要解释的行为的小代码示例?
-
类变量存储在类命名空间
MyClass.__dict__或vars(MyClass)中。实例变量存储在实例的命名空间中:my_instance = MyClass()然后my_instance.__dict__或vars(my_instance)。变量在赋值时就存在,并且没有变量声明。
标签: java python class object memory