3.1 python 基础 - 文件操作

40 阅读2分钟

文件操作基础

在 Python 中,文件可以通过内置的 open() 函数打开。open() 函数需要提供文件路径和打开模式作为参数。

打开文件

# 打开文件
file_path = 'example.txt'
file = open(file_path, 'r')  # 'r' 表示读取模式

在这里,file_path 是文件的路径,可以是相对路径或绝对路径。'r' 是文件打开模式,表示文件将被打开用于读取。

文件的打开模式

文件可以被打开用于不同的操作,常见的模式有:

  • 'r': 读取模式。如果文件不存在,抛出异常。
  • 'w': 写入模式。会覆盖文件内容,如果文件不存在则创建新文件。
  • 'a': 追加模式。将内容写入到现有文件的末尾。如果文件不存在,则创建新文件。
  • 'b': 二进制模式。用于读写二进制文件。
  • '+': 更新模式。用于读写文件。

之后会单独写一篇文章总结一下不同的读取方式的区别和用途

写入文件

# 写入内容
file.write('Hello, World!\n')

使用 write() 方法可以向文件中写入数据。请注意,在 Python 中,写入的数据会首先保存在内存缓存中。

强制写入硬盘

虽然 Python 会在合适的时候自动将缓存中的数据写入硬盘,但有时你可能希望立即将数据写入硬盘。这时,可以使用 flush() 方法。

# 强制写入硬盘
file.flush()

逐行读取大文件

由于python读取文件的时候是加载在内存中的,一台电脑的内存总还是有限的,对于超大的文件,直接使用read的方法会导致电脑卡死,因此需要一些其余的策略来获取文件内容,使用循环逐行读取是其中一种内存高效的处理方式。

# 逐行读取
for line in file:
    print(line.strip())

确保文件关闭

在完成文件操作后,应该关闭文件以释放资源。可以使用 close() 方法手动关闭文件,或者(更常使用的是)使用 with 上下文管理器自动管理文件的打开和关闭。

# 使用 with 自动管理文件关闭
with open(file_path, 'r') as file:
    for line in file:
        print(line.strip())

使用 with 语句可以确保无论在处理文件过程中发生什么,文件最终都会被关闭。