【发布时间】:2017-10-25 20:42:47
【问题描述】:
请不要将我的问题标记为已回答,因为在有关 stackoverflow 或 Unicode HOWTO 的所有问题中,我无法弄清楚如何在 Python 3 中打印上划线或 U+203E 字符。有人可以请用婴儿程序员语言解释如何打印这样的 unicode 字符?我尝试了一些东西,但老实说我不知道自己在做什么。
我正在使用 Kubuntu xenial (16.04)。
当我尝试打印字符时,我得到一个 UnicodeEncodeError。我的问题是,如何解决这个错误?
编辑 1:问题定位
我现在发现我的语言环境设置为 POSIX,这将是 ASCII 编码。我将尝试将其设置为 UTF-8 编码。
编辑 2:仍然没有解决方案
我已经找到了我需要改变的地方,但我还没有找到如何去做。对于遇到相同问题的任何人,都会有一条评论,其中包含指向解决类似问题的帖子的链接。
编辑 3:最终答案
Here 是一个指向 askubuntu 论坛的链接,我在该论坛中询问如何编辑我的 /etc/default/locale 文件。事实证明,Linux shell 中的一个命令就足够了。对我来说很多东西都不起作用,但是这个命令允许我将我的语言环境设置为 en_US.UTF-8:sudo /usr/sbin/update-locale LANG=en_US.UTF-8。重新启动我的操作系统后,设置已应用并且我的语言环境已更改。
现在我不再需要上划线字符了,因为我已经学会了使用图形库,但是由于我的语言环境,我遇到了多个问题。感谢大家的建议!
【问题讨论】:
-
print("\u203e")? -
@juanpa.arrivillaga 这给了我一个 UnicodeEncodeError。我将编辑我的问题以进行澄清
-
是的,这意味着您的终端不支持 unicode,或者没有启用 unicode 支持(即设置为使用其他编解码器解码)
-
您确切地遇到了什么错误?但是,是的,问题可能出在您的终端上,而不是 Python。
-
尝试类似解决方案here
标签: python python-3.x unicode locale