使用python修改文件并立即写回到原始位置操作(inplace读写)
作者:GhostFromHeaven 发布时间:2021-02-04 11:22:31
标签:python,文件,位置,inplace
很多应用多需要处理文件,而处理文件有一个固定的模式:打开文件,读入一些数据,处理这些数据,打印到屏幕上或写入另一个文件。
那么,如果我们想修改之后立即写回文件,该怎么做呢?用什么模式打开?又怎么读写?
我个人尝试了很多中方法,不是无法实现,就是操作非常麻烦。最终放弃。
幸运的是,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在一个字符串中找到另外一个字符串并找到该字符起始的位置
代码详解
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'))
来源:https://blog.csdn.net/GhostFromHeaven/article/details/7803901


猜你喜欢
- Google Talk是一个功能很简洁的即时通讯工具,尤其是它的文字输入区域,不同于其他IM,除了一个文字输入区域外没有任何其他操作。但是用
- 序言这次玩次狠得。除了编译器使用yum安装,其他全部手动编译。哼~看似就Nginx、PHP、MySql三个东东,但是它们太尼玛依赖别人了。没
- asp按关键字查询XML的问题 '-------------------------------------------------
- 此文刊登在《程序员》三月期,有删改提到安全问题,首先想到应付这些问题的应该是系统管理员以及后台开发工程师们,而前端开发工程师似乎离这些问题很
- IP合法性校验是开发中非常常用的,看起来很简单的判断,作用确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验
- 在用python的bottle框架开发时,前端使用ajax跨域访问时,js代码老是进入不了success,而是进入了error,而返回的状态
- Python基本内置数据类型有哪些一些基本数据类型,比如:整型(数字)、字符串、元组、列表、字典和布尔类型。随着学习进度的加深,大家还会接触
- 分形,具有以非整数维形式充填空间的形态特征。通常被定义为“一个粗糙或零碎的几何形状,可以分成数个部分,且每一部分都(至少近似地)是整体缩小后
- 前面是分部讲解,完整代码在最后。导入模块 :import osfrom shutil import copy, rmtreeimport r
- 绘制图形利用opencv提供的绘制图形api可以轻松在图像上绘制各种图形,比如直线,矩形,圆,椭圆等图形。line(img,pt
- 前言数据分析就是将数据以各种图表的形式展现给领导,供领导做决策用,因此熟练掌握饼图、柱状图、线图等图表制作是一个数据分析师必备的技能。Pyt
- 实例如下:/** * 将数值四舍五入后格式化. * * @pa
- 我就废话不多说了,大家还是直接看代码吧!#执行结果转化为dataframedf = pd.DataFrame(list(result))补充
- Python 编程语言已经成为 IT 中使用的最流行的语言之一。成功的一个原因是它可以用来解决各种问题。从网站开发到数据科学、机器学习到任务
- 环境springboot、mybatisPlus、mysql8mysql8(部署在1核2G的服务器上,很卡,所以下面的数据条数用5000,太
- Keyboard Scan Codes (Numerical Order)Keyboard Scan Codes (Numeri
- 作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇
- ASP中从数据库读取二进制文件数据代码:<%driver_name1="DRIVER={Microsoft&n
- 这篇文章主要介绍了python解析命令行参数的三种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要
- 问题你想从一个简单的XML文档中提取数据。解决方案可以使用 xml.etree.ElementTree 模块从简单的XML文档中提取数据。为