You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中替换字符串指定索引位置的字符?

Python替换字符串指定索引字符的方法

在Python里,字符串是不可变对象,所以你没法直接通过original[4] = 'o'这种方式修改某个位置的字符。不过有两种常用的方法可以实现你的需求:


方法1:切片拼接(最常用)

利用字符串切片将原字符串拆分成三部分:目标索引之前的子串、替换字符、目标索引之后的子串,再把它们拼接起来:

original = "My Wurds"
modified = original[:4] + 'o' + original[5:]
print(modified)  # 输出: My Words

解释:

  • original[:4] 取索引0到3的字符(切片是左闭右开),结果是 "My W "
  • 加上替换字符 'o'
  • original[5:] 取索引5到末尾的字符,结果是 "rds"
  • 三者拼接后就得到了修改后的字符串

方法2:转列表修改后转回字符串

因为列表是可变类型,我们可以先把字符串转成列表,修改指定索引的元素后,再转回字符串:

original = "My Wurds"
str_list = list(original)
str_list[4] = 'o'
modified = ''.join(str_list)
print(modified)  # 输出: My Words

解释:

  • list(original) 将字符串拆分为单个字符组成的列表:['M', 'y', ' ', 'W', 'u', 'r', 'd', 's']
  • 修改索引4的元素为 'o'
  • ''.join(str_list) 把列表中的字符重新拼接成字符串

顺便提一句:如果尝试直接修改字符串的索引位置(比如original[4] = 'o'),会触发 TypeError: 'str' object does not support item assignment 错误,这就是字符串不可变性的体现。

内容的提问来源于stack exchange,提问作者Pavel Zagalsky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:15:29