python如何使用 __slots__ 减少内存开销
更新:HHH   时间:2023-1-7


这篇文章将为大家详细讲解有关python如何使用 __slots__ 减少内存开销,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

使用 __slots__ 减少内存开销。

你有没有观察到你的 Python 应用程序消耗了大量资源,尤其是内存?这是使用<__slots__>类变量在一定程度上减少内存开销的一种技巧。

import sysclass FileSystem(object):

	def __init__(self, files, folders, devices):
		self.files = files
		self.folders = folders
		self.devices = devicesprint(sys.getsizeof( FileSystem ))class FileSystem1(object):

	__slots__ = ['files', 'folders', 'devices']
	
	def __init__(self, files, folders, devices):
		self.files = files
		self.folders = folders
		self.devices = devicesprint(sys.getsizeof( FileSystem1 ))#In Python 3.5#1-> 1016#2-> 888

显然,您可以从结果中看到内存使用量有所节省。但是当一个类的内存开销不必要地大时,你应该使用 __slots__ 。仅在分析应用程序后执行此操作。否则,您将使代码难以更改并且没有真正的好处。

关于“python如何使用 __slots__ 减少内存开销”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

返回开发技术教程...