【发布时间】:2015-08-12 15:20:06
【问题描述】:
我正在通过 ipython 使用 pandas 处理 excel 表。表包含西里尔字母。当我尝试处理数据时,我总是得到一串数字而不是单词。它看起来像这样:
In [16]: report_sorted_geo['country'].unique()
Out[16]:
array([u'\u0410\u0431\u0445\u0430\u0437\u0438\u044f',
u'\u0410\u0437\u0435\u0440\u0431\u0430\u0439\u0434\u0436\u0430\u043d',
u'\u0410\u0440\u043c\u0435\u043d\u0438\u044f',
u'\u0411\u0435\u043b\u0430\u0440\u0443\u0441\u044c',
u'\u0412\u044c\u0435\u0442\u043d\u0430\u043c',
u'\u0413\u0432\u0430\u0442\u0435\u043c\u0430\u043b\u0430',
u'\u0413\u0435\u0440\u043c\u0430\u043d\u0438\u044f',
u'\u0413\u043e\u043d\u043a\u043e\u043d\u0433',
u'\u0413\u0440\u0443\u0437\u0438\u044f',
有解决办法吗?
当我只是想打印一些东西时,输出没问题:
In [17]: print "привет"
привет
有谁知道如何解决这个问题?
【问题讨论】:
-
u'\u0410\u0431\u0445\u0430\u0437\u0438\u044f'是一个 unicodestr,所以它确实包含一个单词,这没有问题。 -
有没有办法让这样的单词可读?
-
嗯,这主要取决于您的解释器(它是一个 unicode 字符串,所以您的解释器可能无法“识别”它)...使用
IPython (3.4) QT Console,如果我运行它,您的代码会输出单词Windows 命令行,我得到和你一样的输出。你真的想用这些线做什么? -
我想整理数据,计算一些统计数据并创建一个数据透视表。如果无法读取表格中的信息,将很难做到。
-
@YKY:您使用的是 Python 2 还是 Python 3?你真的需要提到 Unicode 问题,因为 Python 3 中的 Unicode 处理与 Python 2 中的处理完全不同。FWIW,像
'\u0410'这样的东西被称为 Unicode 转义序列。跨度>
标签: python python-2.7 pandas ipython