Python学习文件处理(九)

文件处理 b 模式

文件往硬盘存储过程 字符串------encode------>bytes
从硬盘上读文件过程 bytes------decode------->字符串

f = open('test11.txt','wb')
f.write(bytes('汉字中文\n',encoding='utf8'))#也可以写成下面形式
f.write(bytes('怡宝',encoding='utf8'))
创建test11名的txt文件以wb模式打开,往文件中写入如'汉字中文'换行

文件处理流程

1 打开文件,得到文件句柄并赋值给一个变量
2 通过句柄对文件进行操作
3 关闭文件
python中需要用到open()函数 看如下

f = open('小新pro.txt',encoding='utf8')
#注意文件名显示有文件格式的 也要写出来如 小新pro.txt文件,注意需要处理的文件若不在同一目录下这需要写绝对路径
data = f.read()
print(data)
f.close()

文件处理模式—读

文件有只读 只写 只追加
默认为只读模式

f = open('文件处理.txt','r',encoding='utf8')#r 为只读模式
print(f.readable())#判断文件是否可读  输出Ture
print(f.writable())#判断文件是否可写  输出False
print(f.readline())#一次读一行
print(f.readlines())#一次读取全部,并用列表的形式显示出来
f.close()

文件处理模式—写

w模式相当于新建一个空文档覆盖之前的文档

f = open('文件处理112233.txt','w',encoding='utf8')
f.write('111111\n')
f.write('2222222\n')#写文件是 换行需要自己家换行符
f.writelines(['进口量分开\n','打发放到打发\n'])#需要写个列表,
#文件内容只能是字符串
f.close()

文件处理模式—追加模式

a模式为追加模式,追加的内容放到文件最后

f = open('小新pro11.txt','a',encoding='utf-8')
f.write('a模式追加模式,追加的内容放到文件最后')

文件处理模式—w+

在这里插入图片描述

f = open('文件处理模式123.txt','w+',encoding='utf8')
f.write('111111\n')
#f.write('2222222\n')

print(f.closed)#判断文件是否关闭
print(f.encoding)#取打开文件的编码格式
print(f.tell())#tell() 函数用于判断文件指针当前所处的位置
f.close()
f = open('文件处理模式123.txt','r+',encoding='utf8')
print(f.tell())
print(f.read(3))
print(f.tell())
#当使用open()函数打开文件时,文件指针的起始位置为0,表示位于文件的开头处
#当使用read()函数从文件中读取3个字符之后,文件指针同时向后移动3个字符的位置
#当程序使用文件对象读写数据时,文件指针会自动向后移动:读写了多少个数据,文件指针就自动向后移动多少个位置。

文件处理模式—seek()

seek() 函数用于将文件指针移动至指定位置,
seek有三中模式 0 是从文件一开始的位置移动 1 是从上次停留的位置开始移动,1的模式要指定文件要以b的方式打开,2 是倒着移动

with open('文件处理模式123.txt','rb') as ff:
    print(ff.tell())
    ff.seek(-5,2)
    print(ff.read())

输出结果

0
b'weqaz'

将一个文件的内容重写到另一个文件中 方法如下

with open('文件处理模式123.txt','r',encoding='utf8') as src_f,\
        open('重写文件.txt','w',encoding='utf8')as dst_f:
    data = src_f.read()
    dst_f.write(data)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值