SyntaxError: Non-ASCII character 与 Cannot decode using encoding "ascii" 错误解决
转载请注明出处:
python调试时遇到的两个相同的编码错误进行总结:
1.错误:Cannot decode using encoding "ascii", unexpected byte at position
具体 错误信息如下:
2.错误:SyntaxError: Non-ASCII character
当程序文件中,存在中文字符时候,文件未声明编码格式就会出现报错信息:
target_td = soup.find('a', string='香吧香')
3.以上两个错误的解决办法:
以上两个错误
解决这个问题的方法是,需要在Python脚本的最开始一行,加入一句 # -*- coding: utf-8 -*-
或者 #coding=UTF-8
,这样Python就会使用UTF-8编码来解析脚本。例如:
# -*- coding: utf-8 -*-
# or
#coding=UTF-8
这两行代码告诉Python,你的脚本使用的是UTF-8编码,所以Python就会使用UTF-8编码来解析你的脚本,而不是默认的ASCII编码。
需要注意的是,脚本文件必须真的使用UTF-8编码,否则Python仍然会抛出这个错误。可以使用文本编辑器的“保存为”功能,选择UTF-8编码来保存你的脚本文件。