python修改文件内容的3种方法详解


Posted in Python onNovember 15, 2019

这篇文章主要介绍了python修改文件内容的3种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一、修改原文件方式

def alter(file,old_str,new_str):
  """
  替换文件中的字符串
  :param file:文件名
  :param old_str:就字符串
  :param new_str:新字符串
  :return:
  """
  file_data = ""
  with open(file, "r", encoding="utf-8") as f:
    for line in f:
      if old_str in line:
        line = line.replace(old_str,new_str)
      file_data += line
  with open(file,"w",encoding="utf-8") as f:
    f.write(file_data)

alter("file1", "09876", "python")

二、把原文件内容和要修改的内容写到新文件中进行存储的方式

2.1 python字符串替换的方法,修改文件内容

import os
def alter(file,old_str,new_str):
  """
  将替换的字符串写到一个新的文件中,然后将原文件删除,新文件改为原来文件的名字
  :param file: 文件路径
  :param old_str: 需要替换的字符串
  :param new_str: 替换的字符串
  :return: None
  """
  with open(file, "r", encoding="utf-8") as f1,open("%s.bak" % file, "w", encoding="utf-8") as f2:
    for line in f1:
      if old_str in line:
        line = line.replace(old_str, new_str)
      f2.write(line)
  os.remove(file)
  os.rename("%s.bak" % file, file)

alter("file1", "python", "测试")

2.2 python 使用正则表达式 替换文件内容 re.sub 方法替换

import re,os
def alter(file,old_str,new_str):

  with open(file, "r", encoding="utf-8") as f1,open("%s.bak" % file, "w", encoding="utf-8") as f2:
    for line in f1:
      f2.write(re.sub(old_str,new_str,line))
  os.remove(file)
  os.rename("%s.bak" % file, file)
alter("file1", "admin", "password")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)
Aug 25 Python
python回调函数用法实例分析
May 09 Python
python处理html转义字符的方法详解
Jul 01 Python
Python机器学习库scikit-learn安装与基本使用教程
Jun 25 Python
Python调用服务接口的实例
Jan 03 Python
python requests抓取one推送文字和图片代码实例
Nov 04 Python
Django 实现将图片转为Base64,然后使用json传输
Mar 27 Python
一文轻松掌握python语言命名规范规则
Jun 18 Python
Pycharm plot独立窗口显示的操作
Dec 11 Python
Ubuntu16安装Python3.9的实现步骤
Dec 15 Python
Python实现生成bmp图像的方法
Jun 13 Python
Python编写冷笑话生成器
Apr 20 Python
Python实现基于socket的udp传输与接收功能详解
Nov 15 #Python
python根据文本生成词云图代码实例
Nov 15 #Python
解决django后台管理界面添加中文内容乱码问题
Nov 15 #Python
python中的TCP(传输控制协议)用法实例分析
Nov 15 #Python
Django admin禁用编辑链接和添加删除操作详解
Nov 15 #Python
django实现类似触发器的功能
Nov 15 #Python
Python socket实现的文件下载器功能示例
Nov 15 #Python
You might like
让PHP支持页面回退的两种方法[转]
2007/02/14 PHP
php mysql Errcode: 28 终极解决方法
2009/07/01 PHP
JavaScript实现滚动栏效果的方法
2015/04/27 PHP
laravel框架分组控制器和分组路由实现方法示例
2020/01/25 PHP
可以显示单图片,多图片ajax请求的ThickBox3.1类下载
2007/12/23 Javascript
Javascript条件判断使用小技巧总结
2008/09/08 Javascript
论坛里点击别人帖子下面的回复,回复标题变成“回复 24# 的帖子”
2009/06/14 Javascript
基于jquery的合并table相同单元格的插件(精简版)
2011/04/05 Javascript
javascript中的if语句使用介绍
2013/11/20 Javascript
js判断iframe内的网页是否滚动到底部触发事件
2014/03/18 Javascript
javascript学习笔记(八)正则表达式
2014/10/08 Javascript
Easyui Treegrid改变默认图标的方法
2016/04/29 Javascript
js ajaxfileupload.js上传报错的解决方法
2016/05/05 Javascript
原生javascript实现分页效果
2017/04/21 Javascript
nodejs 终端打印进度条实例代码
2017/04/22 NodeJs
深入理解vue.js中$watch的oldvalue与newValue
2017/08/07 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
2018/03/09 jQuery
Vue开发之watch监听数组、对象、变量操作分析
2019/04/25 Javascript
微信小程序云开发如何使用npm安装依赖
2019/05/18 Javascript
Django中的CACHE_BACKEND参数和站点级Cache设置
2015/07/23 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
2019/03/26 Python
基于Python的PIL库学习详解
2019/05/10 Python
详解Python odoo中嵌入html简单的分页功能
2019/05/29 Python
python requests证书问题解决
2019/09/05 Python
多版本python的pip 升级后, pip2 pip3 与python版本失配解决方法
2019/09/11 Python
python 3.7.4 安装 opencv的教程
2019/10/10 Python
解决pyecharts运行后产生的html文件用浏览器打开空白
2020/03/11 Python
keras 解决加载lstm+crf模型出错的问题
2020/06/10 Python
查看keras的默认backend实现方式
2020/06/19 Python
游戏商店:Eneba
2020/04/25 全球购物
2013届毕业生求职信范文
2013/11/20 职场文书
《海底世界》教学反思
2014/04/16 职场文书
事业单位考察材料范文
2014/12/25 职场文书
村党组织公开承诺书
2015/04/30 职场文书
Elasticsearch 聚合查询和排序
2022/04/19 Python
vue实现省市区联动 element-china-area-data插件
2022/04/22 Vue.js