如何用Python open()函数打开关闭文件

235 阅读2分钟

open() 函数打开文件 (如果可能的话) 并返回相应的文件对象。Python中的文件处理不需要导入模块

Python open

Python open() 是一个内置函数,用于打开文件并将其作为文件对象返回。它在文件处理过程中使用。

open() 函数返回文件对象 ,它可以用来读、写和修改文件。如果没有找到文件,那么它将引发FileNotFoundError异常。

语法

open(file, mode)
参数描述
文件文件的路径和名称。
模式字符串,定义你想以哪种模式打开文件。
"r" - 读取 - 默认值。它为阅读而打开文件;如果文件不存在则出错。

"a" - Append - 打开文件进行追加,如果文件不存在,则创建该文件。

"w" - Write - 打开文件进行写入,如果不存在则创建文件。

"x" - 创建 - 创建一个指定的文件,如果该文件存在则返回错误。

另外,你可以指定一个文件应该以二进制或文本模式处理。

"t" - 文本 - 默认值。文本模式。

"b" - 二进制 - 二进制模式(例如,图像)。

如何在Python中打开一个文件

要在Python打开一个文件,使用**open()**函数。open()函数接受文件和各种模式,在打开一个文件时可以帮助你。

让我们在与我们的app.py文件相同的目录下创建一个app.txt文件。

现在,在app.py文件中,写下以下代码:

f = open("app.txt")
print(f)

请看输出结果:

➜  pyt python3 app.py
<_io.TextIOWrapper name='app.txt' mode='r' encoding='UTF-8'>
➜  pyt

由于省略了模式,文件是以**'r'**模式打开的;它为阅读而打开。

为open()提供模式

让我们把r模式作为一个参数传递,看看输出:

# app.py

f = open("app.txt", 'r')
print(f)

它将给我们提供和上面一样的输出。

Python 有一个依赖于平台的编码系统。因此,如果你在文本模式下工作,建议指定一个编码类型:

f = open("path_to_file", mode = 'r', encoding='utf-8')

让我们通过'w' 模式。'w'代表写作模式:

f = open("app.txt", 'w')
print(f)

请看输出:

➜  pyt python3 app.py
<_io.TextIOWrapper name='app.txt' mode='w' encoding='UTF-8'>
➜  pyt

让我们通过**'a'** 模式。'a' 代表附加模式:

f = open("app.txt", 'a')
print(f)

请看输出结果:

➜  pyt python3 app.py
<_io.TextIOWrapper name='app.txt' mode='a' encoding='UTF-8'>
➜  pyt

如何在Python中关闭一个文件

要在Python关闭一个文件,使用file.close()函数。file.close()是一个内置函数,可以关闭已打开的文件。一个关闭的文件不能再被读或写:

# app.py

f = open("app.txt", 'r')
print('File is opened')
f.close()
print('File is closed')

请看输出:

➜  pyt python3 app.py
File is opened
File is closed
➜  pyt

就这样了。