(3) 使用模式 ’a’, 追加

测试代码:

with open(‘test.txt’, ‘a’) as f:

    f.write('The third line')

效果:

指向的文件存在则追加,不存在则创建新文件写入!修改一下文件名,指向不存在的文件试试:

with open(‘test2.txt’, ‘a’) as f:

    f.write('The third line')

创建新文件写入:

在这里插入图片描述

(4) ‘r+’ 模式测试

with open(‘test.txt’, ‘r+’) as f:

    f.write('Test r+ mode')

结果:

在这里插入图片描述

文件指针指向文件头,如果文件存在则覆盖之前的内容。

如果指向一个新文件,则抛出异常,不会创建新的文件写入内容。

with open(‘test3.txt’, ‘r+’) as f:

    f.write('Test r+ mode')

输出:

with open(‘test3.txt’, ‘r+’) as f:

FileNotFoundError: [Errno 2] No such file or directory: ‘test3.txt’

(5) ‘w+’ 模式测试

测试代码:

with open(‘test.txt’, ‘w+’) as f:

    f.write('w+ mode Demo')

结果是 文件存在则覆盖,之前的内容全部清除,写入新的内容。不存在,创建新的文件写入。

在这里插入图片描述

之前的内容都被清除了,写入了新的内容。

with open(‘test3.txt’, ‘w+’) as f:

    f.write('w+ mode Demo')

创建了一个新的文件test3.txt

在这里插入图片描述

(6) ‘a+’ 模式测试

测试代码:

with open(‘test.txt’, ‘a+’) as f:

    f.write('a+ mode test')

指向存在的文件时,直接在原有内容后追加
在这里插入图片描述

指向不存在的文件时,创建新的文件写入

with open(‘test4.txt’, ‘a+’) as f:

    f.write('a+ mode test')

结果是:
在这里插入图片描述

关于读取函数read( ), readline(), readlines()

默认情况,read 是一个字节一个字节的读,效率低, readline( ) 一行一行的读取。

readlines 按照行读取,但是将所有数据以一个列表形式返回。

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐