gpt4 book ai didi

python - 为什么我的脚本不能正确打印 Unicode 字符?

转载 作者:行者123 更新时间:2023-11-30 22:46:57 26 4
gpt4 key购买 nike

我正在处理 Twitter 数据,我有一个文件,其中包含一堆推文,每行一条。大多数推文都是用葡萄牙语写的,因此它们有特殊字符,例如“é”、“á”等

我正在尝试从文件中过滤停用词并对推文进行标记,但在处理后我的脚本无法正确打印特殊字符。

示例:

AT_USER pra concurso público, tô entrando nessas agora porque emprego bom tá foda

变成:

[u'pra', u'concurso', u'p\xfablico', u't\xf4', u'entrando', u'nessas', u'agora', u'porque', u'emprego', u'bom', u't\xe1', u'foda']

为什么每个标记前都有这个“u”?为什么“ú”变成了“\xfa”?

如何获得不带“u”且正确打印重音字符的 token ?

在这里gist您可以检查之前、之后的文本以及我使用的脚本。

谢谢:)

最佳答案

你有一个列表

>>> l = [u'pra', u'concurso', u'p\xfablico', u't\xf4', u'entrando', u'nessas', u'agora', u'porque', u'emprego', u'bom', u't\xe1', u'foda']

当你打印列表时,这些词看起来很奇怪

>>> print l
[u'pra', u'concurso', u'p\xfablico', u't\xf4', u'entrando', u'nessas', u'agora', u'porque', u'emprego', u'bom', u't\xe1', u'foda']

但是如果你打印这些文字,看起来就很好

>>> for word in l:
... print word
...
pra
concurso
público

entrando
nessas
agora
porque
emprego
bom

foda
>>>

当您打印列表时,Python 会打印列表的表示形式,这有利于程序员查看对象是什么。它有括号和引号,还有……一个“u”告诉你这是一个 Unicode 字符串,而不是常规的 ascii 字符串。您会看到 Unicode 字符的 ascii 转义版本,因为这是在 ascii 中查看这些字符的唯一方法。如果您将打印的字符串作为 python 命令进行计算,您甚至可以获得原始列表!

>>> l2 = eval("[u'pra', u'concurso', u'p\xfablico', u't\xf4', u'entrando', u'nessas', u'agora', u'porque', u'emprego', u'bom', u't\xe1', u'foda']")
>>> l == l2
True

一切都好!您只是获得了列表的极客 View 。

python 3 在处理 Unicode 方面做得更好。除非你有理由坚持使用 2.x,否则就走吧!

关于python - 为什么我的脚本不能正确打印 Unicode 字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40695529/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com