在Python中替换前面的字符串和字符

在Python中替换前面的字符串和字符,python,Python,我需要编写一个python程序来修复文本文件中的链接 每一个 其中00是一个随机的两位数,应更改为 /1.jpg 我现在的代码是 with open("new.txt", "wt") as out: for line in open("source.txt"): out.write(line.replace('/o/', '')) 但是这段代码对/o/前面的/00没有任何作用,为什么不在最远的正斜杠处拆分呢 with open("new.txt", "wt") as

我需要编写一个python程序来修复文本文件中的链接

每一个

其中
00
是一个随机的两位数,应更改为

/1.jpg
我现在的代码是

with open("new.txt", "wt") as out:
    for line in open("source.txt"):
        out.write(line.replace('/o/', ''))

但是这段代码对
/o/
前面的
/00
没有任何作用,为什么不在最远的正斜杠处拆分呢

with open("new.txt", "wt") as out:
    for line in open("source.txt"):
        out.write('/' + line.rsplit('/', 1)[1])
像这样的

>>> import os
>>> strs = "/00/o/1.jpg"
>>> '/' + os.path.split(strs)[-1]
'/1.jpg'

这个效果很好!非常感谢你。至于其他答案,对不起,我忘了提到这是用于超链接的。如果我想将“”改为“”,怎么样?@user2790942 Hmm,您可能需要使用正则表达式:
s=“stackoverflow.com/00/o/1.jpg”
'/'.join(re.findall(r'^(.*)/\w{2}/o/(.*)$,s)[0])
>>> import os
>>> strs = "/00/o/1.jpg"
>>> '/' + os.path.split(strs)[-1]
'/1.jpg'
>>> import os
>>> '/' + os.path.basename('/00/o/1.jpg')
'/1.jpg'