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

代码如下:

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

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

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


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

阅读 3.9k
3 个回答

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

新手上路,请多包涵

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题