Как поменять местами символы в строке python
5 лет назад
Человек-Молекула
Ответы
Проще всего будет привести строку к списку, поменять элементы списка местами и вновь собрать строку.
4 года назад
Ivan Mamtsev
Строки в Python неизменяемые: text[0] = 'x' выдаст TypeError. Чтобы поменять символы местами, строку превращают в список, меняют элементы и собирают обратно:
a, b = b, a — обмен значений в Python без временной переменной.
Через срезы
Без списка, для двух позиций i < j:
Поменять соседние символы попарно
Для строки нечётной длины последний символ потеряется. Добавьте его отдельно: result += text[-1] if len(text) % 2 else ''.
Перевернуть строку
Поменять местами все вхождения двух символов
Заменить все a на b и наоборот за один проход:
Два вызова replace() подряд здесь не сработают: после первой замены уже не отличить исходные b от новых.
Поменять местами слова
Первая и последняя буква
Для строки из одного символа этот код вернёт удвоенный символ, проверяйте длину заранее.
Строки и срезы разбирают в бесплатном курсе «Основы Python».
8 дней назад
Никита Вихров






