Python--文件操作(3)

(7) 'rb’模式

测试代码:

with open(‘ZR.ico’, ‘rb’) as f:

    for linein f:

        print(line)

以二进制方式读取文件,可读取图片文件。

也可以读取文本文件:

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

    for linein f:

            print(line)

输出:

b’w+ mode Demoa+ mode test’

(8) 'rb+'模式

读取文本文件:

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

    for linein f:

        print(line)

输出:

b’w+ mode Demoa+ mode test’

因为’rb+’ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头

可以写入内容的,但是指针移到文件头,会覆盖内容的。

data =b’30’

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

    f.write(data)

效果如下:

数据覆盖了前面的内容。

(9) 'wb’模式

以二进制格式打开一个文件只用于写入,如果文件存在,则覆盖,如果文件不存在,创建新文件。

测试代码:

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

    f.write(b'12345')

效果如下:
在这里插入图片描述

之前的内容完全覆盖。只存在新写入的内容。

(10) 'wb+'模式

以二进制格式打开一个文件用于读写。如果文件存在,则覆盖,如果文件不存在,创建新文件。

测试代码如下:

写数据测试:

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

    f.write(b'test write function')

效果:

在这里插入图片描述

写是覆盖的方式

读取数据测试:

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

lines = f.readline()

print(lines)

任何文件读取的数据都是空,文件操作后都被清除,不知道为什么!

图片文件测试读后,图片内容被清除,文件损坏。

在这里插入图片描述

(11) 'ab’模式

以二进制格式打开一个文件用于追加。如果文件存在,文件指针会放在文件结尾,新的内容被追加在已有的内容之后。如果文件不存在,创建新文件写入。

测试追加数据:

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

    f.write(b'This append text')

效果:

在这里插入图片描述

写入的数据追加在原始文件的末尾。

如指定文件不存,则创建新文件,并写入内容。

with open(‘test5.txt’, ‘ab’) as f:

    f.write(b'ab for new file')

效果:

在这里插入图片描述

(12) 'ab+'模式

以二进制格式打开一个文件用于读写。如果文件存在,则追加,如果文件不存在,创建新文件读写。

追加内容测试:

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

    f.write(b'ab+ append text')

效果:
在这里插入图片描述

指定文件不存在,创建新文件并写入测试:

with open(‘test6.txt’, ‘ab+’) as f:

    f.write(b'ab+ append text with new FILE')

效果:

在这里插入图片描述

创建了新文件,并写入了数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

flysh05

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值