Заменить символ по определенному индексу в строке

Вот несколько способов замены символа по определенному индексу в строке:

Метод 1: использование конкатенации строк

def replace_char_at_index(string, index, new_char):
    return string[:index] + new_char + string[index+1:]

Метод 2: использование преобразования списка и объединения

def replace_char_at_index(string, index, new_char):
    string_list = list(string)
    string_list[index] = new_char
    return ''.join(string_list)

Метод 3. Использование нарезки и объединения

def replace_char_at_index(string, index, new_char):
    return string[:index] + new_char + string[index+1:]

Метод 4. Использование регулярных выражений

import re
def replace_char_at_index(string, index, new_char):
    return re.sub(r'(?<=^.{}){}'.format(index, re.escape(string[index])), new_char, string)