Я имею дело с немецким текстом, который я хотел бы кодировать и декодировать, чтобы избавиться от некоторых символов.Например, скажем, у меня есть
text = 'führt - möglich'
Я хотел бы получить:
corrected_text = 'führt - möglich'
Если я кодирую text
один раз с использованием cp1252
и декодирую результат с помощью utf8
,Я получаю:
text.encode('cp1252').decode('utf8')
# 'führt - möglich'
Первое слово в порядке, но во втором слове осталось несколько символов для замены.Я могу кодировать / декодировать второй раз, чтобы получить
text.encode('cp1252').decode('utf8').encode('cp1252').decode('utf8', 'ignore')
# 'fhrt - möglich'
Теперь это нормально для второго слова, но в первом отсутствует ü
.
Я мог бы кодировать и использовать это таблица отладки вместе с str.replace()
для решения вышеуказанной проблемы.Тем не менее, я хотел бы знать: учитывая text
, есть ли способ использовать encode
и decode
, чтобы получить corrected_text
?