【发布时间】:2016-09-14 11:10:56
【问题描述】:
我最近向朋友解释了__slots__ 的用法。我想向他演示结果并使用以下代码:
import sys
class Foo:
__slots__ = 'a', 'b'
def __init__(self, a, b):
self.a = a
self.b = b
class Bar:
def __init__(self, a, b):
self.a = a
self.b = b
a = Foo(10, 20)
b = Bar(10, 20)
print(sys.getsizeof(a))
print(sys.getsizeof(b))
Python 3 控制台上的输出是:
56
56
Python 2 的输出是:
72
72
为什么大小没有区别?
【问题讨论】:
-
可能不是重复的,而是相关的:stackoverflow.com/questions/11301295/…
标签: python python-3.x