Поменяйте порядок символов между первым и вторым вхождением буквы h на обратный. (Python

Поменяйте порядок символов между первым и вторым вхождением буквы "h" на обратный. (Python)
Zagadochnaya_Sova

Zagadochnaya_Sova

Чтобы поменять порядок символов между первым и вторым вхождением буквы "h" на обратный в строке, мы можем использовать следующий алгоритм:

1. Сначала мы найдем первое вхождение буквы "h" в строке. Для этого мы используем метод `find()` встроенного класса `str`.
2. Если первое вхождение буквы "h" было найдено, мы продолжаем поиск второго вхождения буквы "h". Мы будем искать вхождение после индекса первого символа "h", чтобы не изменять первую часть строки.
3. Как только мы найдем второе вхождение буквы "h", мы определим подстроку, которая находится между первым и вторым символами "h".
4. Затем мы перевернем эту подстроку, используя срез строки с обратным шагом.
5. Наконец, заменим исходную подстроку на перевернутую подстроку в исходной строке и вернем результат.

Вот Python код, реализующий данный алгоритм:

python
def reverse_between_h(string):
first_h_index = string.find("h") # Поиск индекса первого символа "h"

if first_h_index != -1: # Если первое вхождение найдено
second_h_index = string.find("h", first_h_index + 1) # Поиск индекса второго символа "h"

if second_h_index != -1: # Если второе вхождение найдено
substring = string[first_h_index + 1: second_h_index] # Подстрока между первым и вторым символами "h"
reversed_substring = substring[::-1] # Перевернутая подстрока
new_string = string.replace(substring, reversed_substring) # Замена подстроки на перевернутую подстроку
return new_string

return string # Если первое или второе вхождение не найдено, возвращаем исходную строку

# Пример использования
string = "hello school hi there"
result = reverse_between_h(string)
print(result)


Входная строка `"hello school hi there"` будет преобразована в `"hello loohs hi there"`, где подстрока "o sc" между первым и вторым символами "h" была перевернута.
Знаешь ответ?
Задать вопрос
Привет!
hello