首页  >  问答  >  正文

python - 为什么在首行定义了utf-8,还要用sys再set一次?

代码如下:

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

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

为什么已经写了#-*- coding:utf-8 -*-
下面还要sys.setdefaultencoding('utf-8')
求教?谢谢


已解决
这里说的挺明白的:也谈 Python 的中文编码处理

ringa_leeringa_lee2761 天前739

全部回复(3)我来回复

  • 巴扎黑

    巴扎黑2017-04-17 16:37:59

    上面那个是说本文件的encoding。根python的sys无关。

    回复
    0
  • PHPz

    PHPz2017-04-17 16:37:59

    为什么我们在 py 脚本中需要 sys.setdefaultencoding(“utf-8”) ?

    回复
    0
  • 黄舟

    黄舟2017-04-17 16:37:59

    你可以在python里import sys。然后sys.getdefaultencoding()看看你python默认编码是啥,反正我默认的是ascii…
    话说我昨天在ubuntu上使用了题主你这几行代码,输出到命令行的中文依然是乱码…略诡异…最后就直接在文件里处理中文了

    回复
    0
  • 取消回复