修改的概念:对于硬盘上数据的修改, 根本没有改的操作, 只有覆盖操作
修改的流程:文件的修改都是数据加载到内存中, 在内存中修改完再覆盖入硬盘
1.修改过程
2.优缺点
3.使用场景
看情况而定, 一般用于文本编辑器, 让用户能看到全部的内容
with open('user.txt',mode='r',encoding='utf-8') as f:
data=f.read()
data=data.replace('python','人生苦短,我用python')
with open('user.txt',mode='w',encoding='utf-8') as f:
f.write(data)
1.修改过程
2.使用到 OS 模块
3.优缺点
4.适用场景
看具体而定, 一般用于程序员开发式
import os
with open('user.txt',mode='rt',encoding='utf-8') as read_f,\
open('user.txt.swap',mode='wt',encoding='utf-8') as write_f:
for line in read_f:
if 'python' in line:
line=line.replace('python','人生苦短,我用python')
write_f.write(line)
#Python小白学习交流群:725638078
os.remove('user.txt') #删除源文件
os.rename('user.txt.swap','user.txt') #把临时文件名改成源文件名
可以拷贝任意类型的文件
os.path.isfile()先判断文件是否存在
import os
while 1:
user_file = input("请输入文件路径>>").strip()
if not os.path.isfile(user_file):
print("文件不存在,请重新输入")
continue
else:
copy_path = input("请输入目标路径>>").strip()
with open(r"%s"%(user_file),"rb")as read_file,\
open(r"%s"%(copy_path),"ab")as w_f:
for line in read_file:
w_f.write(line)
if len(user_file) == len(copy_path):
print("copy成功")
break
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。