Это ваши первые три замены, которые работают так, как вы хотели:
replace('D', 'Y') --> Yonkey
replace('o', 'e') --> Yenkey
replace('n', 'k') --> Yekkey
После этого вы начинаете заменять символы, которые встречаются несколько раз в str1
.
replace('k', 'n') --> Yenney
replace('e', 'o') --> Yonnoy
replace('y', 'd') --> Yonnod
replace
- неподходящий метод для обращения строки: он заменяет все совпадающие символы, а не только тот, который вы хотели заменить.