本文实例讲述了python中__slots__的用法。分享给大家供大家参考。具体分析如下:
定义__slots__ 后,可以再实例上分配的属性名称将被限制为指定的名称。否则将引发AttributeError,这种限制可以阻止其他人向现有的实例添加新的属性.
使用__slots__的类的实例不在使用字典来存储数据。相反,会使用基于数组的更加紧凑的数据结构。
在会创建大量对象的程序中,使用__slots__可以显著减少内存占用和使用时间
1
2
3
4
5
|
class Account( object ): __slots__ = ( 'name' , 'balance' ) class Test( object ): def __init__( self ,name): self .name = name |
希望本文所述对大家的Python程序设计有所帮助。