首页 > 编程笔记

Python close()方法:关闭文件

Python close() 方法用于关闭一个已打开的文件。关闭后的文件不能再进行读写操作,否则会触发 ValueError 错误。close() 方法允许调用多次。使用 close() 方法关闭文件是一个好习惯。

close()方法的语法格式如下:

fileObject.close()

在 D 盘根目录下创建文件夹 file,然后运行以下命令:
>>>f=open(r'D:\file\python_demo.txt','w+')  #打开文件
>>>print ("文件名为: ", f.name)  #输出文件的名称
文件名为:  D:\file\python_demo.txt
>>>f.close()  # 关闭文件
提示:当 file 对象被引用到操作另一个文件时,Python 会自动关闭之前的 file 对象。

对文件的操作往往会抛出异常,为了保证对文件的操作无论是正常结束还是异常结束都能够关闭文件,此时可以将 close() 方法的调用放在异常处理的 finally 代码块中。

例如以下 Python 代码:
filename='demo.txt'
f = None
try:
    f = open(filename)       #可能会引发FileNotFoundError异常
    print('文件打开成功!')
    content = f.read()       #可能会引发OSError异常
    print(content)
except FileNotFoundError as e:
    print('文件不存在哦!')
finally:
    if f is not None:     #判断f变量是否有数据,如果有数据,则说明文件打开成功
        f.close()           #关闭文件
        print('关闭文件成功!')
如果感觉上述代码太烦琐,可以进一步优化,通过 with as 可以帮助用户自动释放资源,包括关闭文件的操作。

具体 Python 代码如下:
filename='demo.txt'
with open(filename) as f:
    content = f.read()
    print(content)

推荐阅读