如何在Python中修改字符串中的单个字符?类似的东西:
a = "hello"
a[2] = "m"
'str'对象不支持项目分配。
答案 0 :(得分:14)
字符串在Python中是不可变的。您可以改为使用字符列表:
a = list("hello")
如果要显示结果,请使用''.join(a)
:
a[2] = 'm'
print ''.join(a)
答案 1 :(得分:11)
在python中,string是不可变的。如果您想更改单个字符,则必须使用slicing:
a = "hello"
a = a[:2] + "m" + a[3:]
答案 2 :(得分:8)
尝试从中构建列表。当你将一个iterable传递给一个列表构造函数时,它将turn it into a list(这有点过于简单化了,但通常都有效)。
a = list("hello")
a[2] = m
然后,您可以使用''.join(a)
加入备份。
答案 3 :(得分:3)
这是因为python中的字符串是不可变的。