【发布时间】:2010-12-22 12:24:03
【问题描述】:
我的印象是文件对象在引用计数达到 0 时立即关闭,因此行:
foo = open('foo').read()
会得到文件的内容并立即关闭文件。但是,在阅读了Is close() necessary when using iterator on a Python file object 的答案后,我的印象是这不会发生,并且在文件对象上调用.close() 是总是必要的。
上面这行代码是否符合我的想法?即使是这样,它是 Python 式的吗?
【问题讨论】:
-
你问的是Python文件对象还是操作系统级别的底层文件对象? OS 层与 Python 层是分开的。你问的是哪个?
-
我很乐意解释这两个级别发生的情况。更具体地说,我想知道编写该行代码是否会导致我的应用程序出现问题。我假设当 Python 关闭文件对象时,底层对象也会被释放。
标签: python