Найти в Дзене

Строки в Python нельзя изменить

Мне, как человеку воспитанному на Паскале, непривычны некоторые вещи в других языках программирования. И мне странно, почему они реализованы именно так, а не иначе.

Но, думаю, что разработчики этих языков не глупее меня. И если они приняли такое решение, значит, у них были на то основания. А мне остаётся только смириться. Например, с тем, что в Python невозможно изменить отдельный символ строки, как, например, в Паскале:

mysrt := 'Hello, World!';
mystr[1] := '?';

Такой код в Паскале прекрасно отработает. Но не в Python. Хотя прочитать отдельный символ строки подобным образом в Python можно, но записать - нельзя. Вот такой код:

mystr = "Hello, World!"
print(mystr)
print(mystr[0], mystr[1])
mystr[0] = '?'

будет прекрасно работать до последней строки. А на последней строке случится ошибка:

И нам сообщат, что объект str не поддерживает изменение отдельного символа строки.

Так что если вы этого ещё не знали, то даже не пытайтесь так делать. У Python есть очень много фишек, но этой почему-то нет. Так уж получилось…

Наука
7 млн интересуются