使用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实现12306火车票查询器
Apr 20 Python
Python批量查询域名是否被注册过
Jun 21 Python
Python之Scrapy爬虫框架安装及简单使用详解
Dec 22 Python
Python实现读取txt文件并转换为excel的方法示例
May 17 Python
python实现三维拟合的方法
Dec 29 Python
Falsk 与 Django 过滤器的使用与区别详解
Jun 04 Python
Python 安装第三方库 pip install 安装慢安装不上的解决办法
Jun 18 Python
Python+OpenCV实现将图像转换为二进制格式
Jan 09 Python
Python timeit模块的使用实践
Jan 13 Python
Django haystack实现全文搜索代码示例
Nov 28 Python
python3 实现mysql数据库连接池的示例代码
Apr 17 Python
Python中glob库实现文件名的匹配
Jun 18 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读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
2013/08/10 PHP
php+mysql大量用户登录解决方案分析
2014/12/29 PHP
PHP入门教程之日期与时间操作技巧总结(格式化,验证,获取,转换,计算等)
2016/09/11 PHP
tp5框架基于ajax实现异步删除图片的方法示例
2020/02/10 PHP
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
JavaScript 全角转半角部分
2009/10/28 Javascript
jquery中prop()方法和attr()方法的区别浅析
2013/09/06 Javascript
jquery使用append(content)方法注意事项分享
2014/01/06 Javascript
js打开新窗口方法整理
2014/02/17 Javascript
我的Node.js学习之路(三)--node.js作用、回调、同步和异步代码 以及事件循环
2014/07/06 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
JavaScript数据结构与算法之栈详解
2015/03/12 Javascript
JavaScript中标识符提升问题
2015/06/11 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
2016/08/01 Javascript
详解Angular中$cacheFactory缓存的使用
2016/08/19 Javascript
JS出现失效的情况总结
2017/01/20 Javascript
详解AngularJs HTTP响应拦截器实现登陆、权限校验
2017/04/11 Javascript
Vue resource中的GET与POST请求的实例代码
2017/07/21 Javascript
node-sass安装失败的原因与解决方法
2017/09/04 Javascript
jQuery 实现左右两侧菜单添加、移除功能
2018/01/02 jQuery
微信小程序开发之tabbar图标和颜色的实现
2018/10/17 Javascript
vscode vue 文件模板的配置方法
2019/07/23 Javascript
vue实现折线图 可按时间查询
2020/08/21 Javascript
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
举例讲解Python面向对象编程中类的继承
2016/06/17 Python
python的构建工具setup.py的方法使用示例
2017/10/23 Python
python实现梯度下降法
2020/03/24 Python
在Tensorflow中实现leakyRelu操作详解(高效)
2020/06/30 Python
python实现npy格式文件转换为txt文件操作
2020/07/01 Python
python 下载文件的几种方法汇总
2021/01/06 Python
python 将Excel转Word的示例
2021/03/02 Python
Diamondback自行车:拥有你的冒险
2019/04/22 全球购物
舞蹈教育学专业推荐信
2013/11/27 职场文书
基于go interface{}==nil 的几种坑及原理分析
2021/04/24 Golang
如何用PHP实现分布算法之一致性哈希算法
2021/05/26 PHP
浅谈Python从全局与局部变量到装饰器的相关知识
2021/06/21 Python