python编码出错:SyntaxError: Non-UTF-8 code starting with ‘\xe5’

今天发现python有编码的差别问题。默认用pycharm生成的py文件,是GBK格式,或者UTF-格式,应该说没错啊,但如果列表内容过长,就会报错。

student = ['党志文', '浦欣然', '罗鸿朗', '姜信然', '居俊德', '宿鸿福', '张成和', '林景辉', '戴英华', '马鸿宝', '郑翰音', '厉和煦', '钟英纵', '卢信然', '任正真', '翟彭勃', '蒋华清', '双英朗', '金文柏', '饶永思', '堵宏盛', '濮嘉澍', '戈睿慈', '邰子默', '于斯年', '扈元驹', '厍良工', '甘锐泽', '姚兴怀', '殳英杰', '吴鸿福', '王永年', '宫锐泽', '黎兴发', '朱乐贤', '关乐童', '养永寿', '养承嗣', '贾康成', '韩修齐', '彭凯凯', '白天干', '瞿学义', '那同济', '衡星文', '公兴怀', '宫嘉熙', '牧乐邦', '温彭祖', '桂永怡']
for i in student:
    print(i+'在不在?')

默认py文件是utf-8格式,但因为列表过长,就会报错:

SyntaxError: Non-UTF-8 code starting with ‘\xe5’ in file D:/web/python/4.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

如果把列表减少一些,发现运行不报错。真是奇了怪啊。

还有一个办法,就是把文件使用Nodepad++修改成UTF-8 BOM格式后,不用修改list长度,也不会报错,这是什么原因啊?

未经允许不得转载:不惑博客 » python编码出错:SyntaxError: Non-UTF-8 code starting with ‘\xe5’

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏