使用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抓取京东价格分析京东商品价格走势
Jan 09 Python
在Linux下调试Python代码的各种方法
Apr 17 Python
小议Python中自定义函数的可变参数的使用及注意点
Jun 21 Python
利用Python破解斗地主残局详解
Jun 30 Python
python数据结构之链表详解
Sep 12 Python
使用python 打开文件并做匹配处理的实例
Jan 02 Python
python 利用pandas将arff文件转csv文件的方法
Feb 12 Python
python实现树的深度优先遍历与广度优先遍历详解
Oct 26 Python
在win64上使用bypy进行百度网盘文件上传功能
Jan 02 Python
pytorch 模拟关系拟合——回归实例
Jan 14 Python
python re模块匹配贪婪和非贪婪模式详解
Feb 11 Python
Django User 模块之 AbstractUser 扩展详解
Mar 11 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与javascript对多项选择的处理
2006/10/09 PHP
PHP通用分页类page.php[仿google分页]
2008/08/31 PHP
PHP 动态随机生成验证码类代码
2010/04/09 PHP
PHP 透明水印生成代码
2012/08/27 PHP
php实现删除指定目录下相关文件的方法
2014/10/20 PHP
php 变量引用与变量销毁机制详细介绍
2016/12/05 PHP
PHP设置Cookie的HTTPONLY属性方法
2017/02/09 PHP
Laravel 5.4前后台分离,通过不同的二级域名访问方法
2019/10/13 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
JQuery 遮罩层实现(mask)实现代码
2010/01/09 Javascript
jquery制作select列表双向选择示例代码
2014/09/02 Javascript
深入探究AngularJS框架中Scope对象的超级教程
2016/01/04 Javascript
inner join 内联与left join 左联的实例代码
2017/09/18 Javascript
vue分页器组件编写方法详解
2019/06/28 Javascript
微信小程序swiper实现文字纵向轮播提示效果
2020/01/21 Javascript
关于vue的列表图片选中打钩操作
2020/09/09 Javascript
vue添加自定义右键菜单的完整实例
2020/12/08 Vue.js
[54:08]LGD女子刀塔学院 DOTA2炼金术士教学
2014/01/09 DOTA
python通过imaplib模块读取gmail里邮件的方法
2015/05/08 Python
Python计算三角函数之asin()方法的使用
2015/05/15 Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
2016/09/19 Python
python简易实现任意位数的水仙花实例
2018/11/13 Python
django与小程序实现登录验证功能的示例代码
2019/02/19 Python
pandas取出重复数据的方法
2019/07/04 Python
基于python分析你的上网行为 看看你平时上网都在干嘛
2019/08/13 Python
Pytorch 卷积中的 Input Shape用法
2020/06/29 Python
html5 canvas 实现光线沿不规则路径运动
2020/04/20 HTML / CSS
加拿大女鞋品牌:ALDO
2016/11/13 全球购物
约瑟夫·特纳男装:Joseph Turner
2017/10/10 全球购物
领先的英国注册在线药房 :Simply Meds Online
2019/03/28 全球购物
电子专业毕业生自荐信
2014/05/25 职场文书
英语系毕业生求职信
2014/07/13 职场文书
房屋所有权证明
2014/10/20 职场文书
小学语文国培研修日志
2015/11/13 职场文书
Python图片检索之以图搜图
2021/05/31 Python
详解JS数组方法
2021/11/20 Javascript