Python 文件 close() 方法



Python 文件close()方法关闭当前打开的文件。众所周知,如果打开文件以对其执行任务,则在完成任务后必须关闭它。这样做是为了确保操作系统上打开的文件数量不超过其设置的限制。

在操作系统中关闭文件是必要的,因为保留太多打开的文件容易受到漏洞的影响,并可能导致数据丢失。因此,除了此方法之外,当文件的引用对象重新分配给另一个文件时,Python 会自动关闭文件。但是,仍然建议使用 close() 方法以正确的方式关闭文件。

关闭文件后,就无法再读取或写入文件。如果对已关闭的文件执行操作,则会引发 ValueError,因为该文件必须处于打开状态才能执行该操作。

注意:此方法可以在程序中多次调用。

语法

以下是 Python close()方法的语法:

fileObject.close()

参数

该方法不接受任何参数。

返回值

此方法不返回值。

示例

以下示例显示了 Python close() 方法的使用方法。首先,我们使用文件对象“fo”以写入二进制 (wb) 模式打开一个文件。然后,在使用 close() 方法关闭文件之前,我们显示文件名。

# Open a file using a file object 'fo'
fo = open("foo.txt", "wb")
print("Name of the file: ", fo.name)

# Close the opened file
fo.close()

当我们运行以上程序时,它会产生以下结果:

Name of the file:  foo.txt

示例

关闭文件后,我们无法对文件执行任何操作。这将引发 ValueError。

这里,一个测试文件“foo.txt”使用文件对象以写入模式 (w) 打开。然后,使用 close() 方法,我们在尝试对其执行写入操作之前关闭此文件。

# Open a file using a file object 'fo'
fo = open("foo.txt", "w")

# Close the opened file
fo.close()

# Perform an operation after closing the file
fo.write("Hello")

让我们编译并运行给定的程序,以产生以下输出:

Traceback (most recent call last):
  File "main.py", line 8, in <module>
fo.write("Hello")
ValueError: I/O operation on closed file.

示例

close() 方法可以在单个程序中多次调用。

在以下示例中,我们以写入 (w) 模式打开名为“test.txt”的文件。然后,在两次调用 close() 方法之前,对文件执行写入操作。

# Open a file using a file object 'fo'
fo = open("test.txt", "w")

# Perform an operation after closing the file
fo.write("Hello")

# Close the opened file
fo.close()
fo.close()

执行上述程序后,使用 write() 方法写入的字符串将反映在 test.txt 文件中,如下所示。

Hello
python_file_methods.htm
广告