python文件特定行插入和替换实例详解
发布时间 - 2026-01-11 02:17:44 点击率:次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
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】
如何获取上海专业网站定制建站电话?
Win11关机界面怎么改_Win11自定义关机画面设置【工具】
微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】
jQuery validate插件功能与用法详解
Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】
使用Dockerfile构建java web环境
laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程
Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件
HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
高防服务器租用指南:配置选择与快速部署攻略
Laravel怎么在Controller之外的地方验证数据
laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法
JavaScript如何实现继承_有哪些常用方法
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
详解vue.js组件化开发实践
Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤
魔方云NAT建站如何实现端口转发?
如何快速重置建站主机并恢复默认配置?
Python自然语言搜索引擎项目教程_倒排索引查询优化案例
如何快速查询域名建站关键信息?
Laravel如何使用Gate和Policy进行授权?(权限控制)
Laravel如何使用Blade模板引擎?(完整语法和示例)
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
零基础网站服务器架设实战:轻量应用与域名解析配置指南
Laravel如何保护应用免受CSRF攻击?(原理和示例)
Laravel集合Collection怎么用_Laravel集合常用函数详解
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
智能起名网站制作软件有哪些,制作logo的软件?
微信小程序 五星评分(包括半颗星评分)实例代码
悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤
Laravel怎么实现验证码(Captcha)功能
中山网站制作网页,中山新生登记系统登记流程?
QQ浏览器网页版登录入口 个人中心在线进入
历史网站制作软件,华为如何找回被删除的网站?
IOS倒计时设置UIButton标题title的抖动问题
Windows Hello人脸识别突然无法使用
Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
Laravel如何创建自定义中间件?(Middleware代码示例)
公司门户网站制作流程,华为官网怎么做?
如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框
Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门
jquery插件bootstrapValidator表单验证详解

