我有一个未编码的文本,我想用 latin-1 编码。某些字符无法编码。如果我使用带有“replace”参数的编码,我会得到问题标签字符,但是,有没有办法调用自定义函数来替换字符?
例如,我想将所有可能的字符转换为 latin-1,并调用unidecode.unidecode()
不可编码的字符。那可能吗?
您可以使用codecs.register_error('myerrorhandler', function)
.
>>> import codecs
>>> codecs.register_error('silly', lambda e: ('X', e.start+1))
>>> 'foöbar'.encode('ascii', 'silly')
b'foXbar'
>>>