Следующий код взят из This SO Post.
def unicodeToAscii(s):
return ''.join(
c for c in unicodedata.normalize('NFD', s)
if unicodedata.category(c) != 'Mn'
and c in all_letters
)
Когда я запускаю это
print(unicodeToAscii('Ślusàrski'))
я получаю следующий вывод
Slusarski
Но когда я просто запускаю unicodedata.normalize('NFD','Ślusàrski')
, я получаю ту же старую строку Ślusàrski
, что и вывод.
Код в функции просто делает то же самое и игнорирует все символы, которые не относятся к категории Mn
и если она входит в all_letters
. почему я не получаю то же самое с вызовом метода normalize?