当前位置: 首页 > news >正文

Python小程序 - 替换文件内容

    1. 写入文件c:\a.txt
        1)共写入10行
        2)每行内容 0123456789

# 1
ls = '0123456789'
ln = 10
with open("c:/a.txt", 'w+',encoding='UTF-8') as f:for i in range(ln):f.write(ls+'\n')######################################### 2
ln = 10
with open("c:/a.txt", 'w+',encoding='UTF-8') as f:for i in range(ln):ls = str(i)for j in range(ln):ls = ls + str(j)f.write(ls+'\n')##
00123456789
10123456789
20123456789
30123456789
40123456789
50123456789
60123456789
70123456789
80123456789
90123456789

    2. 替换文件内容
       1)全文替换指定内容

# replace '1' with 'a'# 1
with open("c:/a.txt", 'r',encoding='UTF-8') as f:fl = f.readlines()for fs in fl:print(fs.replace('1','a'))################################################ 2-1
with open("c:/a.txt", 'r',encoding='UTF-8') as f:fl = f.readline()while fl:print(fl.replace('1','a'))fl = f.readline()# 2-2
fl = ''
with open("c:/a.txt", 'r',encoding='UTF-8') as f:fl = f.readlines()for fn in range(len(fl)):print(fl[fn].replace('1','a'))fl[fn] = fl[fn].replace('1','a')print(fl[fn])with open("c:/a.txt", 'w',encoding='UTF-8') as f:f.writelines(fl)####
00a23456789
a0a23456789
20a23456789
30a23456789
40a23456789
50a23456789
60a23456789
70a23456789
80a23456789
90a23456789

      2)替换指定行的内容

# replace line 5
# replace '1' with 'A'
rl = 5
rw = 'A'
with open("c:/a.txt", 'r',encoding='UTF-8') as f:fl = f.readlines()fl[rl-1] = fl[rl-1].replace('1',rw)with open("c:/a.txt", 'w',encoding='UTF-8') as f:f.writelines(fl) ##
00123456789
10123456789
20123456789
30123456789
40A23456789
50123456789
60123456789
70123456789
80123456789
90123456789

    3. 定义函数 
 

def replace_word_in_file(file_path,old_word,new_word,line_num):fl = '' # file contentwith open(file_path, 'r',encoding='UTF-8') as f:fl = f.readlines()if(line_num>len(fl) or line_num<0 ):print('Wrong line number, pleae check.')# replace all in file              elif(line_num == 0):for fn in range(len(fl)):fl[fn] = fl[fn].replace(old_word,new_word)else:fl[line_num-1] = fl[line_num-1].replace(old_word,new_word)with open(file_path, 'w',encoding='UTF-8') as f:f.writelines(fl)if __name__ == "__main__":replace_word_in_file("c:/a.txt",'1','A',0)  # 1  replace_word_in_file("c:/a.txt",'1','A',5)  # 2replace_word_in_file("c:/a.txt",'1','A',11) # 3replace_word_in_file("c:/a.txt",'1','A',-1) # 4## 1
00A23456789
A0A23456789
20A23456789
30A23456789
40A23456789
50A23456789
60A23456789
70A23456789
80A23456789
90A23456789## 2
00123456789
10123456789
20123456789
30123456789
40A23456789
50123456789
60123456789
70123456789
80123456789
90123456789## 3
Wrong line number, pleae check.## 4
Wrong line number, pleae check.

-- 创作助手提问

  1. python readline 逐行读出
    with open('file.txt', 'r') as file:line = file.readline()while line:print(line)line = file.readline()
  2. python 写入文件
    # 打开文件,以写入模式('w')进行操作
    file = open('example.txt', 'w')# 写入文本
    file.write('Hello, world!')# 关闭文件
    file.close()
http://www.lryc.cn/news/467538.html

相关文章:

  • k8s备份恢复(velero)
  • LED户外屏:面对复杂环境的七大挑战
  • LabVIEW自动化流动返混实验系统
  • 【性能优化】安卓性能优化之CPU优化
  • springboot二手图书交易系统-计算机设计毕业源码88413
  • 解决ElasticSearch启动成功却无法在浏览器访问问题
  • 稀土有色包芯线良好的导电性
  • SIP 业务举例之 Call Forwarding Unconditional(无条件呼转)
  • 基于stm32的esp8266的WIFI控制风扇实验
  • java中的ScheduledExecutorService介绍和使用案例
  • 4天涨粉14万!这个AI小众赛道粉丝涨疯了吧?保姆级教程免费教会你!
  • RK3588 技术分享 | 在Android系统中使用NPU实现Yolov5分类检测
  • itext 转换word文档转pdf
  • WSL-默认root登录
  • ASIO网络调试助手之四:浅谈QTcpServer性能
  • 快手 日常实习一面面经
  • Cursor零基础小白教程系列 - 创建你的第一个Cursor 项目
  • 通用序列化和反序列化实现思路
  • 书生营第四期L0G2000 Python 基础知识
  • Day12-数据库服务冗余架构
  • js监听div尺寸,ResizeObserver
  • STM32与openmv的串口通信
  • C#基于SkiaSharp实现印章管理(11)
  • Spring使用@Async出现循环依赖原因以及解决方案
  • 如何训练 RAG 模型
  • 鸿蒙网络编程系列34-Wifi热点扫描及连接示例
  • LVS三种模式工作原理
  • 【二轮征稿启动】第三届环境工程与可持续能源国际会议持续收录优质稿件
  • 网络安全——防火墙技术
  • Missing classes detected while running R8报错解决方案