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的源码来解析Python下的freeblock
May 11 Python
Python中将字典转换为XML以及相关的命名空间解析
Oct 15 Python
Python编程之event对象的用法实例分析
Mar 23 Python
Python中创建字典的几种方法总结(推荐)
Apr 27 Python
python操作oracle的完整教程分享
Jan 30 Python
Python Requests库基本用法示例
Aug 20 Python
用python脚本24小时刷浏览器的访问量方法
Dec 07 Python
浅谈Tensorflow 动态双向RNN的输出问题
Jan 20 Python
Python reversed函数及使用方法解析
Mar 17 Python
python 爬取B站原视频的实例代码
Sep 09 Python
Python打包exe时各种异常处理方案总结
May 18 Python
python引入其他文件夹下的py文件具体方法
May 23 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
zend optimizer在wamp的基础上安装图文教程
2013/10/26 PHP
解决nginx不支持thinkphp中pathinfo的问题
2015/07/21 PHP
php微信开发接入
2016/08/27 PHP
php中strtotime函数性能分析
2016/11/20 PHP
javascript编程起步(第六课)
2007/02/27 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
JS小游戏之极速快跑源码详解
2014/09/25 Javascript
AspNet中使用JQuery上传插件Uploadify详解
2015/05/20 Javascript
学习javascript面向对象 javascript实现继承的方式
2016/01/04 Javascript
jquery+ajax实现直接提交表单实例分析
2016/06/17 Javascript
浅析$(function) ready和onload 的区别
2016/09/03 Javascript
Bootstrap CSS组件之按钮下拉菜单
2016/12/17 Javascript
深入浅析Nodejs的Http模块
2017/06/20 NodeJs
vue弹窗组件使用方法
2018/04/28 Javascript
快速解决select2在bootstrap模态框中下拉框隐藏的问题
2018/08/10 Javascript
js实现文件上传功能 后台使用MultipartFile
2018/09/08 Javascript
详解Node.js中path模块的resolve()和join()方法的区别
2018/10/29 Javascript
Python获取央视节目单的实现代码
2015/07/25 Python
使用Python编写简单的画图板程序的示例教程
2015/12/08 Python
python difflib模块示例讲解
2017/09/13 Python
python的dataframe和matrix的互换方法
2018/04/11 Python
对dataframe进行列相加,行相加的实例
2018/06/08 Python
基于Python对数据shape的常见操作详解
2018/12/25 Python
Python3爬虫全国地址信息
2019/01/05 Python
tornado+celery的简单使用详解
2019/12/21 Python
PyQt5中QTableWidget如何弹出菜单的示例代码
2020/02/23 Python
浅谈sklearn中predict与predict_proba区别
2020/06/28 Python
台湾网友喜爱的综合型网路购物商城:Yahoo! 奇摩购物中心
2018/03/10 全球购物
物流管理毕业生自荐信
2013/10/24 职场文书
小区停车场管理制度
2014/01/27 职场文书
经典广告词大全
2014/03/14 职场文书
个人工作表现评价材料
2014/09/21 职场文书
党员自我剖析材料(群众路线)
2014/10/06 职场文书
清明节扫墓活动总结
2015/02/09 职场文书
java objectUtils 使用可能会出现的问题
2022/02/28 Java/Android
Win10玩csgo闪退如何解决?Win10玩csgo闪退的解决方法
2022/07/23 数码科技