首页 > 系统相关 >DictProxy和dict的内存大小_python_如何最小的保存dict_20241023

DictProxy和dict的内存大小_python_如何最小的保存dict_20241023

时间:2024-10-23 11:20:21浏览次数:8  
标签:normal python 内存大小 dict proxy 字典 size

缘由:在写多进程的时候,进程之间要用到共享变量,Manager,于是发现了一种新的数据类型:

multiprocessing.managers.DictProxy

简单来说,这种数据类型特点是,只读模式,内存占用的更少,平均减少了四分之一,最高测试可以减少到1/20,配合pickle.dumps来使用,那么存到本地的文件原本可能是20GB,目前可能只需要1GB,读写速度,性能和空间上都是更优解,算是意外收获


chatgpt的例子:(网址:https://tpyrcne.buzz/)

import sys
from types import MappingProxyType

# 创建一个普通的字典
normal_dict = {1: 'a', 2: 'b', 3: 'c'}

# 使用MappingProxyType创建一个字典代理
proxy_dict = MappingProxyType(normal_dict)

# 检查两者的内存大小
size_normal_dict = sys.getsizeof(normal_dict)
size_proxy_dict = sys.getsizeof(proxy_dict)

print(f"普通字典的内存大小:{size_normal_dict} 字节")  #240
print(f"字典代理的内存大小:{size_proxy_dict} 字节")   #48

标签:normal,python,内存大小,dict,proxy,字典,size
From: https://www.cnblogs.com/qiezi-online/p/18496009

相关文章

  • 原创计算机毕业设计—69271 django重大公告卫生事件物资管理系统 (源码免费领)定制程序
    摘要随着信息技术的快速发展,计算机应用已经进入成千上万的家庭。随着物资数量的增加,物资库存管理也存在许多问题。物资数据的处理量正在迅速增加,原来的手工管理模式不适合这种形式。使用计算机可以完成数据收集、处理和分析,减少人力和物力的浪费。需要建立重大公告卫生事件......
  • 原创计算机毕业设计—58671 基于SpringBoot的健康管理系统(源码免费领)小程序、APP、JAV
    摘 要随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,健康管理系统被用户普遍使用,为方便用户能够可以随时进行健康管理系统的数据信息管理,特开发了基于springboot的健康管理系......
  • 3.12版本的python调用MATLAB2024b,安装matlab.engine教程
    #3.12版本的python只能使用2024b的matlab的接口。一、各个版本的兼容关系如下,可通过下面链接去官网查询。VersionsofPythonCompatiblewithMATLABProductsbyRelease-MATLAB&Simulink二、安装matlab.engine!可能由于版本比较新的原因,查了很多资料,给出的方法都没......
  • Python 文件路径与文件系统操作
    处理文件的另一个重要方面是文件路径和文件系统操作。Python提供了多个模块用于操作文件系统,其中最常用的是os模块和pathlib模块。掌握这些工具,能够让你在自动化任务中更轻松地管理文件和目录。1文件路径的基本操作在操作文件时,路径是一个至关重要的概念。文件路......
  • Python 学习记录
    前言简单情况:主要记录学习Python的简单情况,包括代码与结果,以及关键注释工具与来源:一下代码与结果都可在JupyterLab上实现,更多情况可看Github使用NumPy可视化数学函数1.可视化f=x1*e(-x12-x22)importnumpyasnpimportmatplotlib.pyplotaspltx1_array=np.linspa......
  • 计算机毕业设计Python+大模型知识图谱中华古诗词可视化 古诗词智能问答系统 古诗词数
    温馨提示:文末有CSDN平台官方提供的学长联系方式的名片!温馨提示:文末有CSDN平台官方提供的学长联系方式的名片!温馨提示:文末有CSDN平台官方提供的学长联系方式的名片!开发技术:前端:vue.jsechartsD3.js后端:Flask/Django机器学习/深度学习:LSTM情感分析模型、PyTorch、T......
  • 计算机毕业设计Python+Spark知识图谱课程推荐系统 课程用户画像系统 课程大数据 课程
    《Python+Spark知识图谱课程推荐系统》开题报告一、研究背景与意义随着互联网技术的快速发展,在线教育平台已成为人们获取知识、提升技能的重要途径。然而,面对海量的课程资源,用户往往难以快速找到符合自己兴趣和需求的课程。传统的课程推荐系统大多基于简单的规则或统计方法,难......
  • python中的字典排序--sorted()
    字典的排序:在学习python的时候,了解到相比于列表,字典是一个无序的数据结构,一般都不对其进行排序的。但是要想对字典进行排序,是可以通过sorted()函数进行操作的!关于字典的排序,下面从键key和值value进行代码的运行和分析:【先看代码和执行结果,后面会进行详细的解析】#先定义一......
  • windows下python虚拟环境强制重新安装pip并安装paramiko
    环境:OS:Windows11python:3.6.81.切换到虚拟环境目录:cdC:\Users\huangxueliang\PycharmProjects\cmdbtest\venv 2.执行如下命令Scripts\activate 3.强制重新安装python-mpipinstall-U--force-reinstallpip 4.查看版本(venv)C:\Users\huangxueliang\PycharmPro......
  • python 更新pip镜像源
    前言默认情况下pip使用的是国外的镜像,在下载的时候速度非常慢,下载速度是几kb或者几十kb,花费的时间比较长。解决办法国内目前有些机构或者公司整理了对应的镜像源,使得通过内网就能访问即可,下载速度达到几百kb或者几M,速度对比而言简直一个天上,一个地下。国内源:阿里云:http://m......