加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 文件已关闭或仍在内存中?

发布时间:2020-12-20 11:22:52 所属栏目:Python 来源:网络整理
导读:lines = len(open(filename,'r').readlines()) //oropen(filename,'w').writelines(lines) 在python中这行,关闭打开的文件?如果不是如何关闭未分配给任何变量的文件?这些类型的编码也被称为“引用语义”? 解决方法 Python的垃圾收集器将在您上次使用它们
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)以不同方式处理垃圾收集,并且行为可能不同.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读