一,打开文件
在 Python 中,我们使用 open()
函数来打开文件。这个函数需要至少一个参数,即文件名(可以是相对路径或绝对路径)。open()
函数还接受一个可选的 mode
参数,用于指定打开文件的模式。
常见的模式有:
'r'
:只读模式(默认模式)。如果文件不存在,会抛出异常。'w'
:写入模式。如果文件已存在,其内容会被清空;如果文件不存在,会创建新文件。'a'
:追加模式。如果文件已存在,数据会被追加到文件末尾;如果文件不存在,会创建新文件。'x'
:独占创建模式。如果文件已存在,会抛出异常;如果文件不存在,会创建新文件。
还可以在这些模式后加上 '+'
表示同时读写文件,以及 'b'
表示以二进制模式打开文件。
# 以只读模式打开文件
with open('example.txt', 'r') as file: content = file.read() print(content) # 以写入模式打开文件
with open('example.txt', 'w') as file: file.write('Hello, World!')
注意:在上面的示例中,我使用了 with
语句来打开文件。这是一种上下文管理器,可以确保文件在读取或写入完成后被正确关闭,即使发生异常也是如此。这是一种推荐的做法,可以避免文件泄露和其他与文件相关的问题。
二,读取文件
在文件被打开后,我们可以使用文件对象的各种方法来读取文件内容。最常用的方法是 read()
,它可以一次性读取文件的全部内容,或者指定读取的字节数。
另外,还有 readline()
方法用于逐行读取文件,以及 readlines()
方法用于将文件内容按行分割成一个列表。
with open('example.txt', 'r') as file: # 读取整个文件 content = file.read() print(content) # 逐行读取文件 for line in file: print(line, end='') # 注意:这里需要手动去掉行尾的换行符 # 将文件指针重置到文件开头 file.seek(0) # 按行读取文件并分割成一个列表 lines = file.readlines() for line in lines: print(line, end='')
三,写入文件
在写入模式下打开文件后,我们可以使用文件对象的 write()
方法来写入数据。这个方法接受一个字符串作为参数,并将该字符串写入文件。如果需要在字符串中包含换行符,可以使用 \n
。
with open('example.txt', 'w') as file: file.write('Hello, World!\n') file.write('This is a test file.\n')
四,关闭文件
虽然使用 with
语句可以自动关闭文件,但在不使用 with
语句的情况下,我们仍然需要手动关闭文件。这可以通过调用文件对象的 close()
方法来实现。关闭文件是一个好习惯,可以释放系统资源并确保数据的完整性。
file = open('example.txt', 'r')
content = file.read()
print(content)
file.close() # 手动关闭文件