Python 3.5无法解码韩元(货币)符号?

时间:2017-01-16 15:57:19

标签: python

a_string = 'à'.encode ('utf-8')
print (a_string)

b_string = '₩'.encode ('utf-8')
print (b_string)

a_bytes = a_string.decode ('utf-8')
print (a_bytes)

b_bytes = b_string.decode ('utf-8')   # This line gives error: Character maps to undefined
print (b_bytes)

输出是:

enter image description here

我做错了什么或者这是Python 3.5的问题?

输出:

import locale

print (locale.getdefaultlocale ())

是:

('en_US', 'cp1252')

Python版本是3.5.1

[编辑]

这确实是一个Windows语言环境问题。 一切都在Linux上运行良好。

1 个答案:

答案 0 :(得分:1)

您的终端设置为编码cp1252。符号à不是受支持的字符。

将您的shell设置为utf-8是这样的:

export LC_ALL=UTF-8

修改由于您使用的是Windows,请参阅this answer如何更改Windows cmd中的编码