python - 在谷歌 colab 中,当我读取 1.5 gb csv 文件时,它占用 6 gb RAM。我已经使用 psutil.virtual_memory().available 进行了检查。是什么原因?
问题描述
psutil.virtual_memory().available
:
24.50384521484375
test =pd.read_csv("test_csv.csv")
psutil.virtual_memory().available
18.723899841308594
解决方案
因为数据的内部 python 表示比裸文件大小占用更多的内存。
例如,在我的特定版本的 python 中,一个非空字符串对象至少占用 38 个字节:
>>> x = '1'
>>> sys.getsizeof(x)
38
因此,如果您有一个仅包含数字 1 的文件,则该文件本身将只有一个字节。但是,当您将文件内容读入 python 变量时,它会占用比这更多的内存。
推荐阅读
- java - KeyListener 在 Java 摆动中没有响应?
- python - ffmpeg-python 'OSError[2] 没有这样的文件或目录' 错误
- excel - 在新工作簿的公式中使用复制的命名范围
- java - 如何获取包名?
- android - 寻找有关 Access 的解决方案被拒绝查找属性“persist.vendor.sys.activitylog”
- x86 - 现代 Intel x86 CPU 如何实现对商店的总订单
- python - 我想将几个按钮声明为一个
- .net - DataContext.CreateDatabase - 缺少反斜杠
- hadoop - MR3 上的 HIVE:错误 [main] client.ClientLocalResourceUtils$: Invalid URI ${liburis} in getUriFileStatuses()
- pdf - 保存为 pdf 的问题 - 位置不正确