我怎么知道Python的unicode函数可以识别所有受支持的编码
作者:互联网
Python具有Unicode内置函数,可将字节流转换为Unicode字符串.
我只是希望我可以查询系统上所有可用的编码.但是如何.
出现此问题的原因是:某些使用MAC OS X的人给我发送了一封内容编码为’iso-2022-cn’的电子邮件,我发现Windows 7上的Python 2.7无法识别该编码.
>>> print unicode(bs2022, 'iso-2022-cn')
Traceback (most recent call last):
File "<pyshell#97>", line 1, in <module>
print unicode(bs2022, 'iso-2022-cn')
LookupError: unknown encoding: iso-2022-cn
因此,我想通过查看Python支持的所有编码来找出Python是否为’iso-2022-cn使用了不同的名称.
解决方法:
这是python 2.7的list
你也可以做到这一点
from encodings.aliases import aliases
>>> def find(q):
q = encodings.normalize_encoding(q)
... return [(k,v)for k,v in aliases.iteritems() if q in v or q in k]
>>>> find('100')
[('ksx1001', 'euc_kr'), ('iso_ir_100', 'latin_1'), ('ks_x_1001', 'euc_kr')]
标签:python-unicode,character-encoding,python 来源: https://codeday.me/bug/20191123/2065367.html