python软件占多少内存_数据占用多少内存?

在这里最好的做法不是尝试猜测,或者阅读源代码并写出严格的证明,而是做一些测试。有很多复杂的因素使得这些事情很难预测。例如,如果同一字符串有100K个副本,Python将存储实际字符串数据的100K个副本,还是只存储1个?它取决于您的Python解释器和版本,以及其他各种各样的东西。在

^{}的文档有一个指向recursive sizeof recipe的链接。这正是您需要测量的数据结构使用了多少存储。在

所以,比如说,加载前1%的数据,看看它使用了多少内存。然后加载5%,确保它大约是5倍大。如果是这样的话,你可以猜测你的全部数据将是原来的20倍。在

(显然,这并不适用于所有可能的数据—有些对象的交叉链接越多,进入文件的距离越远,其他对象(如数字)可能会越大,等等。但它适用于许多实际类型的数据。如果你真的很担心,你可以随时测试前5%和最后一个5%,看看它们有什么不同,对吗?)在

您还可以通过使用Heapy之类的模块在更高级别上进行测试,或者完全在外部使用processmanager/activitymonitor/等来复查结果。需要记住的一点是,这些外部度量将显示程序的内存使用率峰值,而不是当前内存使用率。现在还不清楚你到底想把什么叫做“当前内存使用量”。(Python很少将内存释放回操作系统。如果它不使用内存,它很可能会被操作系统从物理内存中调出,但是虚拟机大小不会下降。还是不算作你用的在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值