Python首行注释 Non-UTF-8 code starting with ‘\xe5‘

  在用python2的集群中执行python文件会出现

  Non-UTF-8 code starting with '\xe5'

  的报错。

  查一下原因,解决方法是在首行加入:

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

  就可以解决报错了。

  虽然用python用的很久了,但一直不懂:  加入的明明是个注释,为啥能起作用呢?

  后来才知道,#号出现在文件前两行是标识给解释器用的,解释器会读取这个设置。后面的行里使用警号,才是注释,#后的内容不会被执行。

  一般第一行是用来指定运行该脚本的解释器的位置,如

  #!/usr/bin/python

  而第二行则是指定的编码格式,如:

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

  当然,我们这里的解决方式,第一行就直接放这个编码格式了——反正就是前两行的注释是可以对解释器起作用的。

  最后,Python3里默认的编码格式就是UTF-8,因此同样的脚本在python3上执行,就不会有这个报错。这个编码声明也可以省略。

posted @ 2021-12-10 22:59  JunanP  阅读(130)  评论(0)    收藏  举报  来源