让字典节省内存

Posted zhang-dan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了让字典节省内存相关的知识,希望对你有一定的参考价值。

 旧方法

a = ‘name‘:‘tom‘,‘age‘:18
aa = ‘job‘:‘student‘,‘hobby‘:‘eat‘

a.update(aa)
print(a)
>>> ‘name‘: ‘tom‘, ‘age‘: 18, ‘job‘: ‘student‘, ‘hobby‘: ‘eat‘




新方法
from collections import ChainMap

a = ‘name‘:‘tom‘,‘age‘:18
aa = ‘job‘:‘student‘,‘hobby‘:‘eat‘
result = ChainMap(a,aa)
print(result)
>>> ChainMap(‘name‘: ‘tom‘, ‘age‘: 18, ‘job‘: ‘student‘, ‘hobby‘: ‘eat‘)

a.pop(‘name‘)
result = ChainMap(a,aa)
print(result)
>>> ChainMap(‘age‘: 18, ‘job‘: ‘student‘, ‘hobby‘: ‘eat‘)

print(result[‘hobby‘])
>>> eat

print(a)
>>> ‘age‘: 18

总结
新方法类似于列表生成式,不会将所有数据都加载出来,耗费空间,而是要哪个获取哪个
 

以上是关于让字典节省内存的主要内容,如果未能解决你的问题,请参考以下文章

python的内存驻留机制(小数据池)

让暂时不用的chrome标签页休眠节省内存的插件

超级有用的9个PHP代码片段

译文:18个实用的JavaScript代码片段,助你快速处理日常编程任务

13 个非常有用的 Python 代码片段

如何使这个 R data.table 代码更节省内存?