Python:字符串替换索引

新手上路,请多包涵

我的意思是,我想将 str[9:11] 替换为另一个字符串。如果我这样做 str.replace(str[9:11], "###") 它不起作用,因为序列 [9:11] 可以不止一次。如果 str 是 "cdabcjkewabcef" 我会得到 "cd###jkew###ef" 但我只想替换第二个。

原文由 David Davó 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 501
2 个回答

你可以做

s="cdabcjkewabcef"
snew="".join((s[:9],"###",s[12:]))

这应该比加入像 snew=s[:9]+"###"+s[12:] 在大字符串上更快

原文由 janbrohl 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以通过执行以下操作来实现:

 yourString = "Hello"
yourIndexToReplace = 1 #e letter
newLetter = 'x'
yourStringNew="".join((yourString[:yourIndexToReplace],newLetter,yourString[yourIndexToReplace+1:]))

原文由 Damian Lattenero 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题