Метод № 1: использование сегментации списка
Эта задача может быть выполнена с использованием сегментации списка. При этом мы просто разрезаем список на две части, разделяя их в целевой позиции, а затем снова объединяя их после вставки целевой подстроки в середину.
# Демонстрационный код Python3
# Добавить подстроку по определенному индексу
# с использованием срезов списка
# строка инициализации
test_string
=
`geeksgeeks`
# инициализация add_string
add_string
=
"for"
#print исходные строки
print
(
"Исходная строка:"
+
test_string)
# print добавить строку
print
(
"Добавить строку:"
+
add_string)
# инициализация N
N
=
5
# использование срезов списка
# Добавить подстрока по определенному индексу
res
=
test_string [: N]
+
add_string
+
< класс кода = "обычный" > test_string [N:]
<класс кода = " комментарии"> # результат печати
print
(
"Строка после выполнения сложения:"
+
str
(res) )
Вывод:
Исходная строка: geeksgeeks Добавляемая строка: for Строка после добавления: pythonengineering
Способ № 2: Использование join() + list() + insert()
Еще один возможный хак, который может быть выполнено для следующей проблемы: преобразовать строку в список и добавить строку в определенную позицию, а затем выполнить соединение.
# Демонстрационный код Python3
# Добавить подстроку по определенному индексу
# использование соединения ( ) + списка () + вставки ()
# инициализация строки
test_string
=
`geeksgeeks`
# инициализация add_string
add_string
=
"for"
# вывести исходную строку
print
(
"Исходная строка:"
+
test_string)
# напечатать добавить строку
print
(
"Добавить строку:"
+
add_string)
# инициализация N
N
=
5
# использование соединения () + списка () + вставки ()
# Добавить подстроку по определенному индексу
res
=
list
(test_string)
res.insert (N, add_string)
res
=
`` .join (res)
# результат печати
print
(
"Строка после выполнения сложения:"
+
str
(res))
Выход:
Исходная строка: geeksgeeks Строка добавления: for Строка после выполнения добавления: pythonengi