python报错:SyntaxError: Non-UTF-8 code starting with '\xe5'

这个错误解决其实十分简单。先把答案放最前头。

# coding=utf-8

我遇到的情况有点奇葩导致走了不少弯路。。所以记录一下。


起因是做了个生成300个随机人名的脚本,在把这300个人名丢进list里面之后,报错了。


报错

网上查询无非两种方法:

  1. 文件前面添加指定编码的说明;
  2. 配置pycharm的编码(file-settings-editor-code editing)
    照做,依然报错。

在随便试的时候发现,人名少于一定数量的时候,就不会报错了...也想过是不是命中可一些奇怪的文字,干脆把人名全部替换成'呵呵',一样,还是跟数量有关。


300呵呵 报错

30呵呵 不报错

思来想去怀疑是pycharm抽风。在卸载它的前一刻问了一下战友= =战友甩了个链接,就是上面说的方法1,让我逐字逐句地抄,于是奇迹出现了:


300呵呵 成功编译了...

区别是什么呢?
指定编码的说明多带了俩空格。。就报错了。。下面这么写就会报错。。

# coding = utf-8

这个才是标准答案。哭瞎。

# coding=utf-8

特此记录一下生命中浪费的两个小时T T)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容