使用python修改文件并立即写回到原始位置操作(inplace读写)


Posted in Python onJune 28, 2020

很多应用多需要处理文件,而处理文件有一个固定的模式:打开文件,读入一些数据,处理这些数据,打印到屏幕上或写入另一个文件。

那么,如果我们想修改之后立即写回文件,该怎么做呢?用什么模式打开?又怎么读写?

我个人尝试了很多中方法,不是无法实现,就是操作非常麻烦。最终放弃。

幸运的是,Python内置模块fileinput就可以轻松完成。代码如下:

import fileinput
for line in fileinput.input(r"D:\1.txt", inplace=1):
  print line.replace('d', 'b'),

足够简单吧。(将文件中的‘d'替换成'b')。

关于更多fileinput的资料,在这里http://docs.python.org/library/fileinput.html

补充知识:python在一个字符串中找到另外一个字符串并找到该字符起始的位置

使用python修改文件并立即写回到原始位置操作(inplace读写)

代码详解

def index_of_str(seq, sub_seq):
  index=[]
  n1=len(seq)
  n2=len(sub_seq)
  for i in range(n1-n2+1):
    #print('seq==%s' % (seq[i:i + n2]))
    if seq[i:i+n2]==sub_seq:
      #print('seq==%s'%(seq[i:i+n2]))
      index.append(i+1)
  print(index)
index_of_str('ATGATAGAGGGATACGGGATAG', 'GATA')
 
def index_of_str(s1, s2):
  global dex
  dex=0
  index=[]
  lt=s1.split(s2)
  print(lt)
  num=len(lt)
  for i in range(num-1):
    dex+=len(lt[i])
    index.append(dex)
    dex+=len(s2)
  print(index)
  #if len(lt)==1:
    #return -1
  #return len(lt[0])
print(index_of_str('ATGATAGAGGGATACGGGATAG', 'GATA'))

以上这篇使用python修改文件并立即写回到原始位置操作(inplace读写)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
Sep 06 Python
Python使用asyncio包处理并发详解
Sep 09 Python
Python将list中的string批量转化成int/float的方法
Jun 26 Python
python如何创建TCP服务端和客户端
Aug 26 Python
python绘制中国大陆人口热力图
Nov 07 Python
解决python中使用PYQT时中文乱码问题
Jun 17 Python
基于Python的ModbusTCP客户端实现详解
Jul 13 Python
python opencv如何实现图片绘制
Jan 19 Python
用python实现前向分词最大匹配算法的示例代码
Aug 06 Python
python 基于selectors库实现文件上传与下载
Dec 31 Python
浅析pandas随机排列与随机抽样
Jan 22 Python
python实现学生信息管理系统(面向对象)
Jun 05 Python
python删除指定列或多列单个或多个内容实例
Jun 28 #Python
Python3实现建造者模式的示例代码
Jun 28 #Python
Python工程师必考的6个经典面试题
Jun 28 #Python
Python drop方法删除列之inplace参数实例
Jun 27 #Python
对python pandas中 inplace 参数的理解
Jun 27 #Python
浅谈PyTorch中in-place operation的含义
Jun 27 #Python
PyTorch之nn.ReLU与F.ReLU的区别介绍
Jun 27 #Python
You might like
PHP中使用GD库创建圆形饼图的例子
2014/11/19 PHP
Dojo之路:如何利用Dojo实现Drag and Drop效果
2007/04/10 Javascript
基于jquery的使ListNav兼容中文首字拼音排序的实现代码
2011/07/10 Javascript
js判断背景图片是否加载成功使用img的width实现
2013/05/29 Javascript
jQuery.extend()的实现方式详解及实例
2013/06/29 Javascript
js正则表达式中test,exec,match方法的区别说明
2014/01/29 Javascript
中文输入法不触发onkeyup事件的解决办法
2014/07/09 Javascript
JQuery异步获取返回值中文乱码的解决方法
2015/01/29 Javascript
浅谈jQuery中的事件
2015/03/23 Javascript
javascript实现网页中涉及的简易运动(改变宽高、透明度、位置)
2015/11/29 Javascript
bootstrap学习笔记之初识bootstrap
2016/06/21 Javascript
微信小程序 location API接口详解及实例代码
2016/10/12 Javascript
Angular多选、全选、批量选择操作实例代码
2017/03/10 Javascript
在vue中获取token,并将token写进header的方法
2018/09/26 Javascript
微信小程序与webview交互实现支付功能
2019/06/07 Javascript
Vue.js计算机属性computed和methods方法详解
2019/10/12 Javascript
python中from module import * 的一个坑
2014/07/20 Python
浅谈python中的正则表达式(re模块)
2017/10/17 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
2019/04/06 Python
使用Python中的reduce()函数求积的实例
2019/06/28 Python
通过Python实现Payload分离免杀过程详解
2020/07/13 Python
Python Serial串口基本操作(收发数据)
2020/11/06 Python
CSS3绘制六边形的简单实现
2016/08/25 HTML / CSS
德国最大的设计师鞋网上商店:Budapester
2017/12/07 全球购物
美国和加拿大房车出售在线分类广告:RVT.com
2018/04/23 全球购物
水上运动奥特莱斯:Wasterports Outlet
2018/08/08 全球购物
介绍一下Make? 为什么使用make
2016/07/31 面试题
开业庆典答谢词
2014/01/18 职场文书
前处理班长职位说明书
2014/03/01 职场文书
个人整改措施书面材料
2014/10/24 职场文书
2015年试用期自我评价范文
2015/03/10 职场文书
手机销售员岗位职责
2015/04/11 职场文书
保护动物的宣传语
2015/07/13 职场文书
《从现在开始》教学反思
2016/02/16 职场文书
Nginx URL重写rewrite机制原理及使用实例
2021/04/01 Servers
K8s部署发布Golang应用程序的实现方法
2021/07/16 Golang