首页 > 解决方案 > 仅替换字符串的结尾

问题描述

不能在一行中完成以下操作让我很恼火。我有一种感觉,它可以通过列表理解来完成,但是如何呢?

given_string = "first.second.third.None"
string_splitted = given_string.split('.')
string_splitted[-1] = "fourth"
given_string = ".".join(string_splitted)

请注意, given_string 中的点数 (.) 是常数 (3)。所以我总是想替换字符串的第四个片段。

标签: pythonstringlist

解决方案


看起来您应该能够在不拆分为数组的情况下做到这一点。找到最后一个.并切到那里:

> given_string = "first.second.third.None"
> given_string[:given_string.rfind('.')] + '.fourth'

'first.second.third.fourth'

推荐阅读