热线电话:13121318867

登录
2018-11-28 阅读量: 817
使用_slots_减少内存消耗

不知道你是否注意过你的 Python 程序会占用很多资源,特别是内存?这里分享给你一个技巧,使用 <__slots__> 类变量来减少程序的内存消耗。

import sys
class FileSystem(object):

def __init__(self, files, folders, devices):
self.files = files
self.folders = folders
self.devices = devices

print(sys.getsizeof( FileSystem ))

class FileSystem1(object):

__slots__ = ['files', 'folders', 'devices']

def __init__(self, files, folders, devices):
self.files = files
self.folders = folders
self.devices = devices

print(sys.getsizeof( FileSystem1 ))

#In Python 3.5
#1-> 1016
#2-> 888

很明显,从解雇中可以看到节省了一些内存。但是应当在一个类的内存占用大得没有必要时再使用这种方法。对应用进行性能分析后再使用它,不然除了会让代码难以改动外没有什么好处。

0.0000
2
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子