使用西班牙语或波兰语字符编码/转换字符串

时间:2015-10-14 20:17:08

标签: python python-3.x unicode encoding utf-8

1)如何将带有"wdzi\xc4\x99czno\xc5\x9bci"之类字符串的变量转换为"wdzięczności"

2)另外,如何将字符串变量与"±", "Ä™", "Ć"之类的字符转换为正确的字母?

我强调"变量"因为谷歌搜索的所有内容都是"你有些字符串' "等等,我无法做到这一点。

我使用"# -*-编码:utf-8 -*-"在我的脚本的第二行,我仍然遇到这些问题。

另外我说过简单的打印应该输出正确 - 但它没有。

1 个答案:

答案 0 :(得分:3)

在Python 2.7 IDLE中,我得到了这个输出:

>>> print "wdzi\xc4\x99czno\xc5\x9bci".decode('utf-8')
wdzięczności

您的第一个字符串似乎是UTF-8字节字符串,因此只需将其解码为Unicode字符串即可。当Python打印出该字符串时,它会根据您的环境将其编码回适当的编码。

如果您正在使用Python 3,那么您的字符串已被解码不正确,需要更多工作来修复损坏。

>>> print("wdzi\xc4\x99czno\xc5\x9bci".encode('iso-8859-1').decode('utf-8'))
wdzięczności