Не работает функция замены букв на символы

Всем привет! Необходимо написать функцию, которая бы в слове заменяла все символы на '(', если буква встречается в слове один раз и ')' , если буква встречается в слове больше одного раза.

def duplicate_encode(word):
    word1 = word
    for letter in list(word):
        if list(word).count(letter) > 1:
            word1.replace(letter, ')')
        else:
            word1.replace(letter, '(')
    return word1

Не понимаю почему, но данная функция у меня возвращает ровно тоже самое слово, что и на входе.


Ответы (1 шт):

Автор решения: dIm0n

Метод replace возвращает новую строку, а не изменяет старую.

def duplicate_encode(word):
    word1 = word
    for letter in list(word):
        if list(word).count(letter) > 1:
            word1 = word1.replace(letter, ')')
        else:
            word1 = word1.replace(letter, '(')
    return word1

word = "aaabcddf"

print(word)
print(duplicate_encode(word))
→ Ссылка