Введение
В ходе статьи рассмотрим 5 способов развернуть строку в Python.
Функция reversed()
В данном способе для разворачивания строки мы будем использовать встроенную функцию reversed(). Для начала добавим переменную text, в которую добавим текст:
text = 'hello world'
Развернём строку при помощи функции reversed():
text = 'hello world'
text = ''.join(reversed(text))
Выведем итоговый результат:
text = 'hello world'
text = ''.join(reversed(text))
print(text)
# Вывод: dlrow olleh
Цикл for
Во втором способе будем использовать цикл for. Помимо добавления переменной text, добавим пустую переменную text_reverse со строковым типом данных:
text = 'hello world'
text_reverse = ''
Создадим цикл, в котором пройдёмся по значениям в строке text. Внутри цикла приравниваем i + text_reverse к переменной text_reverse:
text = 'hello world'
text_reverse = ''
for i in text:
text_reverse = i + text_reverse
После цикла выводим итоговый результат:
text = 'hello world'
text_reverse = ''
for i in text:
text_reverse = i + text_reverse
print(text_reverse)
# Вывод: dlrow olleh
Цикл while
При использовании цикла while для разворота строки, также понадобится пустая переменная text_reverse со строковым типом данных:
text = 'hello world'
text_reverse = ''
Создадим переменную i, в которой будет храниться длина строки в переменной text:
text = 'hello world'
text_reverse = ''
i = len(text)
Создадим цикл while, который не закончится, пока i > 0. Внутри цикла к переменной text_reverse прибавляем её же значение к значению, хранящемуся в переменной text по индексу [i-1]:
text = 'hello world'
text_reverse = ''
i = len(text)
while i > 0:
text_reverse += text[i-1]
Во время каждой итерации цикла вычитаем единицу из переменной i:
text = 'hello world'
text_reverse = ''
i = len(text)
while i > 0:
text_reverse += text[i-1]
i -= 1
После цикла выводим результат:
text = 'hello world'
text_reverse = ''
i = len(text)
while i > 0:
text_reverse += text[i-1]
i -= 1
print(text_reverse)
# Вывод: dlrow olleh
Рекурсия
Создадим функцию reverse, параметром которой будет variable. Внутри функции будет условие, что если длина строки в variable будет равняться единице, то она будет возвращена:
def reverse(variable):
if len(variable) == 1:
return variable
Если же условие не сработало, то будет возвращено значение в variable по индексу [-1] прибавленное к вызову функции reverse со значением последнего элемента строки variable:
def reverse(variable):
if len(variable) == 1:
return variable
return variable[-1] + reverse(variable[:-1])
Вызовем функцию:
def reverse(variable):
if len(variable) == 1:
return variable
return variable[-1] + reverse(variable[:-1])
text = 'hello world'
print(reverse(text))
# Вывод: dlrow olleh
Срез
Самый простой вариант развернуть строку — это использовать срез:
text = 'hello world'
print(text[::-1])
# Вывод: dlrow olleh
Заключение
В ходе статьи мы с Вами разобрали 5 способов развернуть строку в Python. Надеюсь Вам понравилась статья, желаю удачи и успехов! 🙂