«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как изменить отдельные символы в неизменяемых строках Python?

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

Опубликовано 8 ноября 2024 г.
Просматривать:274

How to Modify Individual Characters in Immutable Python Strings?

Ошибка: объект 'str' не поддерживает назначение элементов.

Строки Python являются неизменяемыми, то есть после создания их отдельные символы не могут быть изменены. модифицированный. Попытка изменить символ напрямую с помощью назначения элемента, как в коде s2[j] = s1[i], приводит к ошибке «TypeError: объект 'str' не поддерживает назначение элемента».

Такое поведение в отличие от таких языков, как C, где строки изменяемы и могут быть изменены таким образом. Чтобы преодолеть это ограничение в Python, рассмотрите следующие альтернативы:

Использование конкатенации строк

Вместо прямого присвоения отдельным символам вы можете создать новую строку, объединив желаемые персонажи. Например:

s1 = "Hello World"
s2 = ""
j = 0

for i in range(len(s1)):
    s2  = s1[i]

Здесь s2 создается путем добавления символов из s1 по одному.

Преобразование в списки

Строки Python могут быть временно преобразованы в списки, изменены, а затем преобразованы обратно в строки. Например:

s1 = "Hello World"
list1 = list(s1)
list1[5] = 'u'
s1 = ''.join(list1)

В этом случае s1 преобразуется в список list1, в котором изменяется пятый символ. list1 затем преобразуется обратно в строку s1 с запрошенной модификацией.

Заявление о выпуске Эта статья перепечатана по адресу: 1729388898. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3