python3 文本处理_Python3 文件处理

文件操作的流程

打开文件

f = open(r'文件路径', 'w', encoding='字符编码')

读取/修改文件

f.write('写入')

保存文件

f.flush() # 快速保存

关闭文件

f.close() # 告诉操作系统关闭文件

文件的三种打开模式

读取: rt read_text 针对文本内容只读

f = open(r'C:\Users\Black\Documents\Python learning\文件操作', 'rt', encoding='utf-8')

data = f.read()

print(data)

print(f.readable) # True

print(f.writable) # False

print(f.readline()) # 读取一行, 光标移动一行

print(f.readlines()) # 读取所有行,生成列表(包括换行\n)

# 循环读取一个个字符

for i in f.read():

print(i)

# 循环读取一行行

for i in f:

print(i)

清空写入: wt write_text 针对文本内容只写

# 使用'w'模式在打开时候就会清空文件

f = open(r'C:\Users\Black\Documents\Python learning\文件操作', 'wt', encoding='utf-8')

print(f.readable()) # False

print(f.writable()) # True

f.write('写入')

# 自动拼接列表元素

f.writeliens(['第一行\n', '第二行\n','第三行'])

追加写入: at append_text 针对文本内容只写

# 使用'a'模式打开时候光标会默认移动到文件尾

f = open(r'C:\Users\Black\Documents\Python learning\文件操作', 'at', encoding='utf-8')

print(f.readable()) # False

print(f.writable()) # True

f.write('追加写入')

PS: 'w'和'a'模式可以自动创建文件

文件的两种形式

文本形式: t

用于文本文件的处理

二进制形式: b

一般用于图片/音频/视频的保存(和r/w/a联用, 不需要encoding)

文件路径

绝对路径

就是文件的详细路径地址, 从盘符开始: C:\Users\Black\Documents\Python learning\文件操作

相对路径

当前运行文件(C:\Users\Black\Documents\Python learning\test.py')的文件夹下的文件名 文件操作

with open打开文件

# with为我们提供了自动关闭文件的功能

with open(r''C:\Users\Black\Documents\Python learning\文件操作, 'wt',encoding='utf-8') as f:

# 在此缩进下文件不会关闭

f.write('清空写入')

print('写入完成') # 当缩进结束文件关闭

可读可写模式(补充)

r+ : 即可读又可写, 光标在文本头部, 写入的话会覆盖后面的字符

w+: 即可读又可写, 会先清空文件内容

a+ : 即可读又可写, 光标在文档尾部, 读取的话会读不到内容

控制光标

with open(r''C:\Users\Black\Documents\Python learning\文件操作, 'rt',encoding='utf-8') as f:

# 3表示读取的字符数量

print(f.read(3))

'''

3表示移动三个字节, 0表示光标的起始位置是头部(1表示当前位置,2表示文本尾部),

所以这行代码就表示从文档头部, 将光标向后移动三个字节

'''

f.seek(3, 0)

# .tell()方法可以显示当前光标的位置

print(f.tell())

# .truncate()截断方法, 3表示光标向后移动三个字节,光标后的内容全部删除

f.truncate(3)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值