Python常见错误汇总

157 阅读1分钟

中文字符解析失败

SyntaxError: Non-ASCII character '\xe5' in file Test1.py on line 8, but no encoding declared; see www.python.org/peps/pep-02… for details

归因

python2运行时默认使用ASCII编码来读取源文件,遇到中文(ASCII无法识别)则报错。另外python3默认utf-8所以不存在这个问题

解决

在源文件首行添加一行声明文件编码为utf-8的注释(以下两种都可)

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

参考

读取字典成员失败

'dict' object has no attribute 'xxx'

归因

字典的key和字典的实例成员是两回事

a = {'xxx': 123}
print(a['xxx']) # 123
print(a.xxx) # 报错