python - 在Python中使用后释放缓冲区空间?

标签 python pandas google-cloud-datalab

因此,我使用 Google Cloud 数据实验室,并使用 %%storage read 命令将大文件(2,000,000 行)读入 text 变量,然后我必须将其处理为使用 BytesIO 的 pandas 数据帧,例如 df_new=pd.read_csv(BytesIO(text))

所以现在我不需要 text 变量或其内容,(所有进一步的处理都是在 df_new 上完成的,我如何删除它( text)并释放内存(我确实不需要 200 万条记录数据集的两个副本......)

最佳答案

使用del,然后强制垃圾回收。

import gc

# Remove text variable
del text
# Force gc collection - this not actually necessary, but may be useful.
gc.collect()

请注意,您可能不会看到进程大小减少以及内存返回操作系统,具体取决于使用的内存分配器(取决于操作系统、使用的核心库和 python 编译选项)。

关于python - 在Python中使用后释放缓冲区空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36318527/

相关文章:

python - Pandas:如何在 DataFrame 中按行比较列表的列与 Pandas(不是 for 循环)?

python - Django:子目录中的静态文件

python - 使用 python 基于每个项目的第一个键对 dict 结果进行分组列表

Python - 从字符串中手动删除特定字母

python - Pandas:用一组行的总和替换它们

python - MYSQL: "Access denied for user ' X' @'localhost' (using password: YES)"PYTHON

python - 我怎样才能让 pandas 时间戳抵消一定的月数?

python - 从 Google Storage Cloud 读取数据到 Google Cloud Datalab 奇怪的错误

python - GCP - 使用操作系统镜像创建 Datalab 实例