Как изменить один символ в строке в Python?

Как мне изменить один символ в строке в Python? Что-то вроде:

 a = "hello"
 a[2] = "m"
Объект

'str' не поддерживает назначение элемента.

Ответы

Ответ 1

Строки неизменяемы в Python. Вместо этого вы можете использовать список символов:

a = list("hello")

Если вы хотите отобразить результат, используйте ''.join(a):

a[2] = 'm'
print ''.join(a)

Ответ 2

В python строка неизменяема. Если вы хотите изменить один символ, вам нужно будет использовать slicing:

a = "hello"
a = a[:2] + "m" + a[3:]

Ответ 3

Попробуйте создать список из него. Когда вы передаете итерируемый в конструктор списка, он превратит его в список (это немного упрощает, но обычно работает).

a = list("hello")
a[2] = m

Затем вы можете присоединиться к нему с помощью ''.join(a).

Ответ 4

Это потому, что строки в python неизменяемы.