张芷铭的个人博客

python打开文件

在Python中,使用open()函数可以打开文件,并指定文件的打开模式。每种模式对应不同的文件操作。下面是常见的几种打开方式:

1. ‘r’ — 只读模式 (Read-only)

描述:以只读方式打开文件。如果文件不存在,会抛出FileNotFoundError。

用法:open(‘file.txt’, ‘r’)

适用场景:当你只需要读取文件内容而不做修改时使用。

2. ‘w’ — 写入模式 (Write)

描述:以写入模式打开文件。如果文件存在,会覆盖文件内容;如果文件不存在,会创建新文件。

用法:open(‘file.txt’, ‘w’)

适用场景:当你需要写入新内容并覆盖原文件时使用。

3. ‘a’ — 追加模式 (Append)

描述:以追加模式打开文件。如果文件存在,写入内容会追加到文件末尾;如果文件不存在,会创建新文件。

用法:open(‘file.txt’, ‘a’)

适用场景:当你需要追加内容到现有文件时使用。

4. ‘x’ — 排它性创建模式 (Exclusive Creation)

描述:以排它性方式打开文件,如果文件已存在,会抛出FileExistsError。如果文件不存在,会创建新文件并打开。

用法:open(‘file.txt’, ‘x’)

适用场景:当你想要创建一个新文件并且确保文件不存在时使用。

5. ‘b’ — 二进制模式 (Binary)

描述:指定文件以二进制模式打开。通常与其他模式一起使用,如rb(读取二进制文件)或wb(写入二进制文件)。

用法:open(‘file.txt’, ‘rb’)

适用场景:当你处理非文本文件(如图像、视频等)时需要使用。

6. ’t’ — 文本模式 (Text)(默认)

描述:指定文件以文本模式打开。与b模式相对,默认情况下,文件是以文本模式打开的。如果不指定,open()会以文本模式打开文件。

用法:open(‘file.txt’, ‘rt’)(可以省略t,即默认是文本模式)。

适用场景:处理文本文件时使用,常见于读取或写入普通文本文件。

7. ‘r+’ — 读写模式 (Read/Write)

描述:以读写模式打开文件。文件必须存在,否则会抛出FileNotFoundError。可以同时读取和写入文件内容。

用法:open(‘file.txt’, ‘r+’)

适用场景:当你需要对已存在的文件进行读写操作时使用。

8. ‘w+’ — 读写模式,覆盖文件内容 (Write/Read)

描述:以读写模式打开文件。文件不存在时会创建新文件,存在时会覆盖原内容。

用法:open(‘file.txt’, ‘w+’)

适用场景:当你需要覆盖文件并进行读写操作时使用。

9. ‘a+’ — 读写模式,追加到文件末尾 (Append/Read)

描述:以追加模式打开文件。如果文件存在,文件内容将追加在末尾;如果文件不存在,会创建新文件。你可以读取和写入文件。

用法:open(‘file.txt’, ‘a+’)

适用场景:当你需要追加数据到文件并同时读取文件内容时使用。

10. ‘b+’ — 二进制读写模式

描述:同时进行读取和写入操作,但以二进制模式进行。可以与其他模式一起使用,如rb+(读取和写入二进制文件)。

用法:open(‘file.txt’, ‘rb+’)

适用场景:当你需要读取和写入二进制数据时使用。

11. ’t+’ — 文本读写模式(与b+相对)

描述:以文本模式同时进行读取和写入操作。与b+相对,t+模式专用于文本文件。

用法:open(‘file.txt’, ‘rt+’)

适用场景:当你需要在文本文件中进行读写操作时使用。

12. ‘a+’ — 追加读写模式

描述:如果文件存在,内容会被追加到文件末尾,同时允许读取;如果文件不存在,文件将被创建。

用法:open(‘file.txt’, ‘a+’)

适用场景:当你既需要读取文件内容,又需要追加内容时使用。

总结:

• ‘r’、‘w’、‘a’是最常用的文件打开模式。

• ‘b’和’t’分别用于二进制和文本文件的读写。

• ‘+‘符号用于在打开模式中指定同时进行读取和写入操作。

如果你想保留文件内容并在文件末尾追加新内容,可以使用’a+‘模式。如果你只需要读取文件并且想在文件末尾写入新的分类结果,‘a+‘模式是最合适的。

💬 评论