gpt4 book ai didi

python - 文件是否已关闭或仍在内存中?

转载 作者:太空宇宙 更新时间:2023-11-03 13:22:45 25 4
gpt4 key购买 nike

lines = len(open(filename, 'r').readlines()) //or
open(filename, 'w').writelines(lines)

这行在 python 中是否关闭打开的文件?如果不是如何关闭未分配给任何变量的文件?另外,这些类型的编码称为什么,是“引用计数语义”吗?

最佳答案

Python 的垃圾收集器将在您最后一次使用打开的文件对象后的某个时间清理它们(这可能会或可能不会立即)。最好是明确的,例如:

with open(filename, 'r') as f:
lines = len(f.readlines())

with open(filename, 'w') as f:
f.writelines(lines)

标准的 CPython 实现使用引用计数并且倾向于非常快速地清理对象。但是,IronPython 等其他实现以不同方式处理垃圾收集,并且行为可能不同。

关于python - 文件是否已关闭或仍在内存中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8868044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com