字符串嵌入了 unicode 代码点,如何转换?蟒蛇 3

时间:2021-05-25 13:00:02

标签: python unicode encoding

此字符串来自第 3 方模块:

<块引用>

/var/www/atenci\xc3\xb3n+integral+a+las+personas+con+c\xc3\xa1ncer

如果在它前面加上 b'' 并从 utf-8 解码,则输出是正确的:

path = b'/var/www/atenci\xc3\xb3n+integral+a+las+personas+con+c\xc3\xa1ncer'
print(path.decode('utf-8'))
<块引用>

/var/www/atención+integral+a+las+personas+con+cáncer

但是如果我尝试使用内置函数或 io.BytesIO 立即对其进行编码和解码,则输出会损坏:

path = '/var/www/atenci\xc3\xb3n+integral+a+las+personas+con+c\xc3\xa1ncer'
decoded = path.encode('utf-8').decode('utf-8')
print(decoded)
<块引用>

/var/www/atención+integral+a+las+personas+con+cáncer

那么,有没有办法让它像在 b'' 前面一样工作?

0 个答案:

没有答案