【问题标题】:Unicode issue in Python 2.7Python 2.7 中的 Unicode 问题
【发布时间】:2018-09-28 09:33:19
【问题描述】:

我将推文保存在 json 文件中

这是我的代码:

def on_data(self, data):
    try:
        with codecs.open('python.json', 'a', encoding='utf-8') as f:
            f.write(data)
            print("Tweet ajoute au JSON")
            return True
    except BaseException as e:
        print("Error on_data: %s" % str(e))
    return True

但我得到了这种类型的字符:\u0e40\u0e21\u0e19\u0e0a

我尝试了一切以不使用这种字符,但没有任何效果(utf-8,latin2...)

【问题讨论】:

  • 究竟是什么问题?
  • 你是什么意思你有他们?在一个文件中?将结果打印到终端... *what exactly *
  • 是的,这就是这些 un​​icode 字符在 Python 2 中的表示方式,但请尝试printing 他们。
  • 您是否知道 Python 字符串中的 \t 如果您打印它实际​​上不会显示 \t,而是显示(神奇的变量!)空格数?如果您打印\n,光标会以某种方式移动到下一行?现在,推断。 internal 符号\u0e19 以某种方式神奇地打印为“น”。 (如果打印到支持此脚本的控制台。)
  • 我投票决定将此问题作为题外话结束,因为它只是表明缺乏理解。

标签: python python-2.7 unicode nltk


【解决方案1】:

如果您希望在 JSON 文件中直接编码非 ascii 字符,则需要使用 ensure_ascii=False 选项对 JSON 进行编码。

【讨论】:

  • 如果有任何迹象表明 OP 知道使用 json 模块,这可能很有用。
猜你喜欢
  • 1970-01-01
  • 2016-10-22
  • 2019-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-21
  • 2015-07-07
  • 1970-01-01
相关资源
最近更新 更多