现象:最近需要抓取一些网页的信息,但发现Python的乱码问题相对Java来说,不太一样。按照以往Java解决中文乱码问题的思路去解决Python乱码,貌似行不通,报错信息:
SyntaxError: Non-ASCII character '\xe5' in file
原因:Python默认是以ASCII作为编码方式的,如果在自己的Python源码中包含了中文(或者其他的语言,比如小日本的日语……),此时即使你把自己编写的Python源文件以UTF-8格式保存了;但实际上,这依然是不行的。
解决方法:在源码的第一行添加以下语句:
# -*- coding: UTF-8 -*-
或者
#coding=utf-8
(注:此语句一定要添加在源代码的第一行)
我们可以将其添加到python模板里,就不必每次都手动写了
第一步,找到设置

第二步设置模板


第一行就是设置python使用的编码格式
第二行是创建py文件时自动生成时间
第三行是py文件名字
第四行是使用的IDE的名字
点击应用后确定
新建一个py文件,我们可以发现,自动生成了下列内容

本文详细解析了Python处理中文乱码的问题,与Java对比,解释了Python默认编码为ASCII导致的错误,并提供了解决方案,即在源码首行添加指定编码声明。
728

被折叠的 条评论
为什么被折叠?



