utf-8编码和希腊字符
utf-8 encoding and greek characters
虽然我设法获得了我需要的所有数据并将其保存在 cv 文件中,但我得到的输出是 UTF-8 格式,这是正常的(如果我错了请纠正我)
TBH 我已经 "played" 使用 .encode() 和 .decode() 选项但没有任何结果。
这是我的代码
brands=[name.text for name in Unibrands]
这是输出
u'Spirulina \u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ae'
这是期望的输出
u'Spirulina Ελληνική'
那个字符串已经可以了;你看到它的 repr
,它确实转义了某些字符,因为这是为了安全地直接复制和粘贴到 Python 源代码(在 Python 2.x 意味着它只需要有可打印的 ASCII 字符)——例如,\u0395
表示代码点 U+0395 GREEK CAPITAL LETTER EPSILON。你看到这种形式是因为打印列表(或其他容器)总是向你显示其内容的 repr
- 如果你直接 print
字符串,你应该看到一个适当的字形而不是转义形式:
>>> print(u'Spirulina \u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ae')
>>> 'Spirulina Ελληνική'
您也可以考虑升级到较新的 Python 版本; Python 3.5(可能还有更早的 3.x 版本)不再转义 repr
中的这些字母,因为 Python 现在默认接受源文件中的 Unicode 字符。
虽然我设法获得了我需要的所有数据并将其保存在 cv 文件中,但我得到的输出是 UTF-8 格式,这是正常的(如果我错了请纠正我)
TBH 我已经 "played" 使用 .encode() 和 .decode() 选项但没有任何结果。
这是我的代码
brands=[name.text for name in Unibrands]
这是输出
u'Spirulina \u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ae'
这是期望的输出
u'Spirulina Ελληνική'
那个字符串已经可以了;你看到它的 repr
,它确实转义了某些字符,因为这是为了安全地直接复制和粘贴到 Python 源代码(在 Python 2.x 意味着它只需要有可打印的 ASCII 字符)——例如,\u0395
表示代码点 U+0395 GREEK CAPITAL LETTER EPSILON。你看到这种形式是因为打印列表(或其他容器)总是向你显示其内容的 repr
- 如果你直接 print
字符串,你应该看到一个适当的字形而不是转义形式:
>>> print(u'Spirulina \u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ae')
>>> 'Spirulina Ελληνική'
您也可以考虑升级到较新的 Python 版本; Python 3.5(可能还有更早的 3.x 版本)不再转义 repr
中的这些字母,因为 Python 现在默认接受源文件中的 Unicode 字符。