3 回答
TA贡献1784条经验 获得超9个赞
在 Python 中,字符串是不可变的,这意味着您不能分配给索引或修改特定索引处的字符。改用str.replace()。这是函数头
str.replace(old, new[, count])
这个内置函数返回字符串的副本,其中所有出现的子字符串old 都被new替换。如果给出了可选参数计数,则仅替换第一个计数出现。
如果不想使用str.replace(),可以利用拼接手动进行
def manual_replace(s, char, index):
return s[:index] + char + s[index +1:]
string = '11234'
print(manual_replace(string, 'I', 0))
输出
I1234
TA贡献1865条经验 获得超7个赞
我不确定您想要达到什么目的,但您似乎只想将 a 替换'1'为'I'一次,因此请尝试以下操作:
string = "11234"
string.replace('1', 'I', 1)
str.replace需要 3 个参数old, new, 和count(这是可选的)。count表示要用old子字符串替换子new字符串的次数。
TA贡献1828条经验 获得超4个赞
您可以使用re(正则表达式),并在sub那里使用该函数,第一个参数是您要替换的内容,第二个是您要替换的内容,第三个是字符串,第四个是计数,所以我说1因为您只想要第一个:
>>> import re
>>> string = "11234"
>>> re.sub('1', 'I', string, 1)
'I1234'
>>>
它实际上只是:
re.sub('1', 'I', string, 1)
添加回答
举报