Python转换编码页字符数到Unicode

2024-06-16 12:24:33 发布

您现在位置:Python中文网/ 问答频道 /正文

默认情况下,print(chr(195))在位置195(“Ô)显示unicode字符 如何打印出现在code page1251中的chr(195),即“Г” 我尝试了:print(chr(195).decode('cp1252'))和各种.encode方法。在


Tags: 方法unicode情况code字符encodeprintdecode
3条回答

您可以使用urllib

print urllib.quote_plus(str.encode('cp1251'))

另外,请记住,如果使用的是国际字符串,请确保在正在解析的字符串中包含u前缀。在

^{pr2}$

改为删除否决票??在

在python3中,chr(n)返回一个只能编码的Unicode字符串。使用bytes创建可解码的字节字符串:

>>> bytes([195])
b'\xc3'
>>> bytes([195]).decode('cp1251')
'Г'
>>> bytes([195,196,197])
b'\xc3\xc4\xc5'
>>> bytes([195,196,197]).decode('cp1251')
'ГДЕ'

由于不能在字符串中存储“raw”值0xC3(如果这样做了,则不应将–原始二进制“unparsed”数据存储为字节数组):从原始字节数组转换的正确方法确实是.decode('cp1251')

>>> print (b'\xc3'.decode('cp1251'))
Г

但是,如果已经在字符串中获得了它,那么最简单的方法是首先使用1对1“编码”拉丁语-1从字符串转换为bytes对象:

^{pr2}$

相关问题 更多 >