gpt4 book ai didi

python - python中dict中存储外语文本时的解码/编码问题

转载 作者:太空宇宙 更新时间:2023-11-03 14:06:48 25 4
gpt4 key购买 nike

我用Python抓取了外语(韩语)文本,并将其存储在字典中。

单独的文本打印到终端就好了,但是字典打印如下:

{'标题': u'\uc138\ubbf8\ub098\ud6c4\uae30'}

我该如何解决这个问题?

# -*- coding: utf-8 -*-

titleReponse = soupResponse.find('div','title').get_text()
print(titleReponse)
collected = {"title":titleReponse}
print(collected)

最佳答案

它只是 Python 2 下 Unicode 字符串的内部 __repr__ 表示。正如您已经注意到的,打印它显示了正确的文本:

>>> dict = {'title': u'\uc138\ubbf8\ub098 \ud6c4\uae30'}
>>> dict
{'title': u'\uc138\ubbf8\ub098 \ud6c4\uae30'}
>>> dict['title']
u'\uc138\ubbf8\ub098 \ud6c4\uae30'
print dict['title']
세미나 후기

您根本不必担心内部表示。。是的,对于没有控制代码的纯 ASCII 字符串,它等于打印的内容。但有这样的事情是完全正常的:

>>> str = '123\n456'
>>> str
'123\n456'
>>> print str
123
456

内部字符串的表示形式又与 print 输出的内容不同。

如果您要大量使用 Unicode 字符串,最好的办法是升级到 Python 3。它对 Unicode 的支持非常出色。一个令人高兴的副作用是,在这种情况下,Unicode 字符串显示得更好(不是“正确”,而是“更好”——这是有区别的 😄):

>>> dict = {'title': u'\uc138\ubbf8\ub098 \ud6c4\uae30'}
>>> dict
{'title': '세미나 후기'}

关于python - python中dict中存储外语文本时的解码/编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48829046/

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