python - sys.getsizeof 用于字符串和列表(字符串)
问题描述
为什么会发生这种情况?列表(有开销)不应该大于字符串吗?
import sys
print(sys.getsizeof('a'*1000)) # output is 1049
print(sys.getsizeof(['a'*1000])) # output is 72
解决方案
该列表不存储字符串,只是对字符串的引用。因此,列表的大小==(列表的开销)+(字符串引用的大小)
推荐阅读
- c# - 如果 IIS 应用程序池未启用 32 位应用程序,则 ASP.NET 站点内存使用率高达 99%
- ios - 如何在 AppDelegate 中引用来自两个不同目标的类?
- python - 如果我使用 update-alternatives 来管理 python 版本而不是 virtualenv 或 pyenv 会发生什么?
- pyspark - 如何通过两个布尔列过滤火花数据框
- node.js - 类型“{}”缺少“请求”类型的以下属性:get、header、accepts、acceptsCharsets 等 67 个
- c++ - gdb 找不到库的源文件
- javascript - 如何告诉 Vuelidate 的验证器接受“alphaNum”加字符点(“.”)?
- msix - 有什么办法可以远程执行 msixpackagingtool.exe
- javascript - Socket.IO - 我如何告诉服务器哪个特定客户端断开连接?
- node.js - 如何解决由于在循环/递归函数中使用猫鼬查询而出现的警告?