Не работает комбинация str.maketrans и translate
Пытаюсь поменять буквы в строке на соответствующие им номера в алфавите.
Не понимаю почему не работает translate.
Плюс ко всему прочему maketrans выдаёт очень странную таблицу для перевода tr, в ней совершенно не фигурируют буквы.
Что я делаю не так?
import string
eg = ['test', 'abc', 'xyz', 'whyunotwork']
new = []
dic = dict(zip(string.ascii_lowercase, map(str, range(1, 27))))
tr = str.maketrans(dic)
for word in eg:
word1 = word.translate(dic)
new.append(word1)
print(new)
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Так вы не используете tr, используйте его:
word1 = word.translate(tr) # tr, а не dic
Вывод:
['2051920', '123', '242526', '238252114152023151811']