Строки в Python — упорядоченная последовательность символов. В Python нет встроенных методов, позволяющих перевернуть строку, «отзеркалить» ее. Но вообще это сделать можно, причем несколькими способами.
Существует три способа перевернуть строку.
1. Срезы
Повернуть строку можно с помощью срезов. Чтобы это сделать, мы просто создадим срез, который начинается с длины строки и заканчивается индексом 0.
Делается это так:
stringname[stringlength::-1] # метод 1
Длиной строки можно и пренебречь:
stringname[::-1] # метод 2
В этом случае подразумевается, что первый аргумент — длина строки. Заканчивается он на индексе 0, а шаг — -1 (то есть, шаг назад).
str="pythonist" # исходная строка stringlength=len(str) # вычисление длины строки slicedString=str[stringlength::-1] # срез print (slicedString) # вывод в консоль перевернутой строки
Вывод:
tsinohtyp
2. Цикл
Мы можем перевернуть строку и в цикле.
Для начала создадим массив (список) reversedString[]
.
После этого мы можем запустить цикл, где итерируемой переменной будет index
— длина списка.
На каждой итерации цикла в reversedString
добавляется символ из строки с индексом [index-1]
. После этого index
уменьшается на 1.
Цикл продолжается до тех пор, пока переменная index
не станет равна 0.
str = "pythonist" # исходная строка reversedString=[] index = len(str) # вычисляем длину строки и сохраняем ее в переменной index while index > 0: reversedString += str[ index - 1 ] # сохраняем значение str[index-1] в reverseString index = index - 1 # уменьшаем значение index на 1 print(reversedString) # перевернутая строка
Вывод:
['t', 's', 'i', 'n', 'o', 'h', 't', 'y', 'p']
3. Метод join()
Это мощный метод, использующий протокол итератора Python. Этот способ работает следующим образом. Строка поворачивается путем обратной итерации при помощи метода reversed(). После этого происходит объединение символов в новую строку при помощи метода join().
Синтаксис выглядит так:
str="pythonist" reversedstring=''.join(reversed(str))
Пример:
str = 'pythonist' # исходная строка reversed=''.join(reversed(str)) # метод .join() объединяет все символы, полученные в результате обратной итерации, в новую строку print(reversed) # вывод перевернутой строки
Вывод:
tsinohtyp