python中__slots__用法实例

yipeiwu_com6年前Python基础

本文实例讲述了python中__slots__的用法。分享给大家供大家参考。具体分析如下:

定义__slots__ 后,可以再实例上分配的属性名称将被限制为指定的名称。否则将引发AttributeError,这种限制可以阻止其他人向现有的实例添加新的属性.
 
使用__slots__的类的实例不在使用字典来存储数据。相反,会使用基于数组的更加紧凑的数据结构。

在会创建大量对象的程序中,使用__slots__可以显著减少内存占用和使用时间

class Account(object):
  __slots__ = ('name' ,'balance')
class Test(object):
  def __init__(self ,name):
    self.name = name

希望本文所述对大家的Python程序设计有所帮助。

相关文章

windows环境下tensorflow安装过程详解

windows环境下tensorflow安装过程详解

一、前言 本次安装tensorflow是基于Python的,安装Python的过程不做说明(既然决定按,Python肯定要先了解啊):本次教程是windows下Anaconda安装Ten...

python 图像处理画一个正弦函数代码实例

python 图像处理画一个正弦函数代码实例

这篇文章主要介绍了python 图像处理画一个正弦函数代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 import num...

Python中将字典转换为XML以及相关的命名空间解析

尽管 xml.etree.ElementTree 库通常用来做解析工作,其实它也可以创建XML文档。 例如,考虑如下这个函数: from xml.etree.ElementTree...

聊聊python里如何用Borg pattern实现的单例模式

有如下 borg pattern 的实现: class Borg(object): __shared_state = {} def __init__(self):...

Python 实现王者荣耀中的敏感词过滤示例

王者荣耀的火爆就不用说了,但是一局中总会有那么几个挂机的,总能看到有些人在骂人,我们发现,当你输入一些常见的辱骂性词汇时,系统会自动将该词变成“*”,作为python初学者,就想用pyt...