python中如何修改文件?
2023-06-13 09:18:46 时间
修改的概念:对于硬盘上数据的修改, 根本没有改的操作, 只有覆盖操作
修改的流程:文件的修改都是数据加载到内存中, 在内存中修改完再覆盖入硬盘
一.修改方式一
1.修改过程
- 先以 r 模式打开源文件,将源文件内容全部读入内存
- 然后在内存中完成修改
- 再以 w 模式打开源文件,将修改后的内容覆盖入源文件
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.修改过程
- 以 r 模式打开源文件,然后以 w 模式打开一个临时文件
- 从源文件中读一行到内存中,修改完毕后直接写入临时文件,循环往复,直到操作完毕所有行
- 删除源文件,将临时文件名改名为源文件名
2.使用到 OS 模块
- import os : 导入模块
- os.remove( ) : 删除
- os.rename( ) : 改名
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
相关文章
- python处理xps文件_如何在Windows 10系统中处理XPS文件
- python读取文件如何去除空格_python读取txt文件时怎么去掉空格
- Python如何生成可执行的.exe文件
- Python入门系列(十)一篇学会python文件处理
- python监控网页内容变化_使用Python监控文件内容变化代码实例
- python中如何打开csv文件_python如何读取csv文件
- 迭代器Python_python进阶路线
- 【说站】python文件写入和关闭
- python读取pkl_Python 读取文件
- python 图片重命名_python批量重命名文件
- python调用通达信公式_通达信公式-主力雷达Python化[通俗易懂]
- Python 下载大文件,哪种方式速度更快
- 如何在python中惰性地读取文件?
- Python 反转字符串_python输出字符串
- python判断文件后缀_Python 判断文件后缀是否被篡改
- python读取excel并写入excel_python如何读取文件夹下的所有文件
- python读取excel单元格内容_python如何读取文件夹下的所有文件
- python读取excel单元格内容_python如何读取txt文件
- pycharm新建python文件默认抬头_如何安装python环境
- 搭建python开发环境-c++教程 如何搭建Python开发环境?
- python-数据库编程-如何在Python中连接到数据库
- seek引发的python文件读写的问题详解编程语言
- 如何在Linux中安装Python?(linux安装python)
- Python爬取MySQL数据,助力数据分析(python读取mysql数据)
- Python如何连接MySQL数据库(python怎么连接mysql数据库)
- Python如何使用MySQL构建立连接(python怎么连接mysql)
- python读写ini文件示例(python读写文件)
- Python生成pdf文件的方法