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计算圆周长、面积、球体体积并画出圆
Apr 08 Python
Python计算已经过去多少个周末的方法
Jul 25 Python
python黑魔法之编码转换
Jan 25 Python
Python开发SQLite3数据库相关操作详解【连接,查询,插入,更新,删除,关闭等】
Jul 27 Python
快速了解Python开发中的cookie及简单代码示例
Jan 17 Python
python Flask 装饰器顺序问题解决
Aug 08 Python
python调用百度地图WEB服务API获取地点对应坐标值
Jan 16 Python
如何基于Python制作有道翻译小工具
Dec 16 Python
详解numpy.ndarray.reshape()函数的参数问题
Oct 13 Python
python自动化发送邮件实例讲解
Jan 04 Python
pycharm 复制代码出现空格的解决方式
Jan 15 Python
Python机器学习之KNN近邻算法
May 14 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
ASP和PHP都是可以删除自身的
2007/04/09 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
2016/01/09 PHP
php简单中奖算法(实例)
2017/08/15 PHP
Laravel框架基于ajax和layer.js实现无刷新删除功能示例
2019/01/17 PHP
PHP随机数函数rand()与mt_rand()的讲解
2019/03/25 PHP
用于自动添加Digg This!按钮的JavaScript
2006/12/23 Javascript
jQuery 插件 将this下的div轮番显示
2009/04/09 Javascript
javascript 子窗体父窗体相互传值方法
2010/05/31 Javascript
基于datagrid框架的查询
2013/04/08 Javascript
放弃用你的InnerHTML来输出HTML吧 jQuery Tmpl不详细讲解
2013/04/20 Javascript
IE6中链接A的href为javascript协议时不在当前页面跳转
2014/06/05 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
JS实现slide文字框缩放伸展效果代码
2015/11/05 Javascript
jQuery简单实现tab选项卡切换效果
2016/06/20 Javascript
JS实现输入框提示文字点击时消失效果
2016/07/19 Javascript
JS动态给对象添加属性和值的实现方法
2016/10/21 Javascript
jQuery中ztree 点击文本框弹出下拉框的实例代码
2017/02/05 Javascript
Nodejs实现文件上传的示例代码
2017/09/26 NodeJs
vue之debounce属性被移除及处理详解
2019/11/13 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
2020/01/18 Javascript
Vue初始化中的选项合并之initInternalComponent详解
2020/06/11 Javascript
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python字符转换
2008/09/06 Python
详解python列表生成式和列表生成式器区别
2019/03/27 Python
python绘制已知点的坐标的直线实例
2019/07/04 Python
如何利用python发送邮件
2020/09/26 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
Ellos瑞典官网:北欧地区时尚、美容和住宅领域领先的电子商务网站
2019/11/21 全球购物
TCP/IP模型的分界线
2012/12/01 面试题
环境科学专业研究生求职信
2013/10/02 职场文书
学习自我鉴定
2014/02/01 职场文书
干部对照检查材料范文
2014/08/26 职场文书
个人总结与自我评价
2015/02/14 职场文书
项目技术负责人岗位职责
2015/04/13 职场文书
大学体育课感想
2015/08/10 职场文书
MySQL系列之五 视图、存储函数、存储过程、触发器
2021/07/02 MySQL