python中__slots__用法实例

yipeiwu_com5年前Python基础

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

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

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

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

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

相关文章

学python安装的软件总结

学python安装什么软件? Python开发软件可根据其用途不同分为两种,一种是Python代码编辑器,一种是Python集成开发工具,两者的配合使用可以极大的提高Python开发人员...

在unittest中使用 logging 模块记录测试数据的方法

如下所示: # -*- coding:utf-8 -*- import sys import logging import unittest import os reload(sy...

python隐藏终端执行cmd命令的方法

在用pyinstaller打包后不想要后面的终端命令框,但是打包时加了-w或者--noconsole命令后会导致cmd程序不能运行从而出错。这个时候用subprocess可以解决该类问题...

使用Python3 编写简单信用卡管理程序

1、程序执行代码: #Author by Andy #_*_ coding:utf-8 _*_ import os,sys,time Base_dir=os.path.dirname...

Python实现将字符串的首字母变为大写,其余都变为小写的方法

利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。 思路:使用capitalize()函数将字符串的首字母转为大写,其余变为小写 L1 = ['A...