如何在 Python 中打印 Unicode 字符?

新手上路,请多包涵

我想制作一本字典,其中英语单词指向俄语和法语翻译。

如何在 Python 中打印出 unicode 字符?另外,如何将 unicode 字符存储在变量中?

原文由 NoobDev4iPhone 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 576
1 个回答

要在 Python 源代码中包含 Unicode 字符,您可以在字符串中使用 \u0123 形式的 Unicode 转义字符。在 Python 2.x 中,您还需要在字符串文字前加上“u”前缀。

下面是在 Python 2.x 交互式控制台中运行的示例:

 >>> print u'\u0420\u043e\u0441\u0441\u0438\u044f'
Россия

在 Python 2 中,在字符串前加上 ‘u’ 将它们声明为 Unicode 类型的变量,如 Python Unicode 文档 中所述。

在 Python 3 中,’u’ 前缀现在是可选的:

 >>> print('\u0420\u043e\u0441\u0441\u0438\u044f')
Россия

如果运行上述命令没有为您正确显示文本,可能是您的终端无法显示 Unicode 字符。

这些示例使用 Unicode 转义符 ( \u... ),它允许您打印 Unicode 字符,同时将源代码保持为纯 ASCII。当在不同系统上使用相同的源代码时,这会有所帮助。如果您确信所有系统都能正确处理 Unicode 文件,您也可以直接在 Python 源代码中使用 Unicode 字符(例如 print u'Россия' 在 Python 2 中)。

有关从文件读取 Unicode 数据的信息,请参阅以下答案:

在 Python 中从文件中读取字符

原文由 Matt Ryall 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题