python文件特定行插入和替换实例详解

python提供了read,write,但和很多语言类似似乎没有提供insert。当然真要提供的话,肯定是可以实现的,但可能引入insert会带来很多其他问题,比如在插入过程中crash掉可能会导致后面的内容没来得及写回。
不过用fileinput可以简单实现在特定行插入的需求:
Python代码
import os
import fileinput
def file_insert(fname,linenos=[],strings=[]):
"""
Insert several strings to lines with linenos repectively.
The elements in linenos must be in increasing order and len(strings)
must be equal to or less than len(linenos).
The extra lines ( if len(linenos)> len(strings)) will be inserted
with blank line.
"""
if os.path.exists(fname):
lineno = 0
i = 0
for line in fileinput.input(fname,inplace=1):
# inplace must be set to 1
# it will redirect stdout to the input file
lineno += 1
line = line.strip()
if i<len(linenos) and linenos[i]==lineno:
if i>=len(strings):
print "\n",line
else:
print strings[i]
print line
i += 1
else:
print line
file_insert('a.txt',[1,4,5],['insert1','insert4'])
其中需要注意的是 fileinput.input的inplace必须要设为1,以便让stdout被重定向到输入文件里。
当然用fileinput.input可以不仅用来在某行插入,还可以在特定模式的行(比如以salary:结尾的行)插入或替换,实现一个小型的sed。
以上就是python文件特定行插入和替换的简单实例,如果大家有不明白或者好的建议请到留言区或者社区提问和交流,使用感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# python文件特定行插入和替换
# python
# 文件插入
# 详解python中的文件与目录操作
# Python使用filetype精确判断文件类型
# Python使用openpyxl读写excel文件的方法
# Python处理Excel文件实例代码
# Python3.6-MySql中插入文件路径
# 丢失反斜杠的解决方法
# Python实现删除文件中含“指定内容”的行示例
# 利用Python读取文件的四种不同方法比对
# python 读取excel文件生成sql文件实例详解
# 的是
# 还可以
# 设为
# 不明白
# 希望能
# 在特定
# 请到
# 可以实现
# 谢谢大家
# 如在
# 真要
# 需要注意
# 过程中
# 重定向
# 必须要
# def
# brush
# import
# py
# os
相关文章:
云南网站制作公司有哪些,云南最好的招聘网站是哪个?
,怎么在广州志愿者网站注册?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
如何基于云服务器快速搭建个人网站?
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
如何在阿里云完成域名注册与建站?
网站微信制作软件,如何制作微信链接?
微信推文制作网站有哪些,怎么做微信推文,急?
建站之星在线版空间:自助建站+智能模板一键生成方案
网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?
C#怎么使用委托和事件 C# delegate与event编程方法
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
如何在局域网内绑定自建网站域名?
网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
建站之星代理费用多少?最新价格详情介绍
无锡营销型网站制作公司,无锡网选车牌流程?
如何快速搭建安全的FTP站点?
单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?
制作网站外包平台,自动化接单网站有哪些?
C++用Dijkstra(迪杰斯特拉)算法求最短路径
微信小程序 input输入框控件详解及实例(多种示例)
油猴 教程,油猴搜脚本为什么会网页无法显示?
香港服务器部署网站为何提示未备案?
ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?
如何在建站之星网店版论坛获取技术支持?
如何在宝塔面板中修改默认建站目录?
Python lxml的etree和ElementTree有什么区别
高端建站如何打造兼具美学与转化的品牌官网?
php json中文编码为null的解决办法
python的本地网站制作,如何创建本地站点?
如何获取免费开源的自助建站系统源码?
高端建站三要素:定制模板、企业官网与响应式设计优化
天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?
如何用好域名打造高点击率的自主建站?
阿里云网站制作公司,阿里云快速搭建网站好用吗?
建站主机类型有哪些?如何正确选型
宝塔Windows建站如何避免显示默认IIS页面?
如何高效配置香港服务器实现快速建站?
广州美橙建站如何快速搭建多端合一网站?
XML的“混合内容”是什么 怎么用DTD或XSD定义
Thinkphp 中 distinct 的用法解析
香港服务器租用每月最低只需15元?
如何获取上海专业网站定制建站电话?
如何在VPS电脑上快速搭建网站?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
如何快速搭建高效可靠的建站解决方案?
Swift中循环语句中的转移语句 break 和 continue
小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建
商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?
*请认真填写需求信息,我们会在24小时内与您取得联系。