python读取文本文件,如何将每行最后一个特定字符替换?

python读取文本文件,每行最后一个/替换为\
文本文件列子如下: /咖啡/速溶咖啡/测试数据/测试数据2, 20220201
/咖啡/拿铁/测试/测试2/测试3/测试4, 20220202
/咖啡/卡布奇诺/测试测试/测试测 20220202
/咖啡/美式 20220203
请问应该如何写python语句?

方法:

解释,s.count('/')计算原来有多少个特定字符串,然后第一步全部替换,第二步将count-1个还原

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-08-05

按照你的要求编写的用正则表达式替换的Python程序如下(注意图中源代码的缩进)

import re

with open("test.txt",'r') as f:

 for line in f:

  line_data=line.strip("\n")

  result=re.sub(r'^(.*)/',r'\1\\',line_data)

  print(result)

追问

大佬,在此基础上请教下,因为我这个文本是上百万行的。  原来的是 E:\咖啡\速溶咖啡\测试数据\测试数据2, 20220201
E:\咖啡\拿铁\测试\测试2\测试3\测试4, 20220202
E:\咖啡\卡布奇诺\测试测试\测试测 ,20220202
E:\咖啡\美式 20220203

我想要的结果是你这个最后的结果,应该怎么来写呢。

追答

如果输出到控制台,可以用下面的Python程序(见图1)

如果要把文件中的内容转换后写到另一个文件,用下面的的Python程序(见图2)

本回答被提问者和网友采纳
相似回答