- NameError
在python中,如果引用的变量未定义,则会报告NameError: name '变量名' is not defined。
如下代码抛出了一个异常:
!/usr/bin/env python
-- coding:utf-8 --
print 'hello world'
print 'hello %s' % name
报错信息如下:
Traceback (most recent call last):
File "hello.py", line 6, in <module
print 'hello %s' % name
NameError: name 'name' is not defined
解决方案:
name = 'world'
print 'hello %s' % name
原因:
变量name没有赋值。
提示:
一般来说,在python中,需要保证变量的定义在使用的前面。
- IndexError
在python中,如果list、tuple中的元素被引用的索引值超过了元素的个数,则会报告IndexError: list index out of range。
如下代码抛出了一个异常:
!/usr/bin/env python
-- coding:utf-8 --
list = ['a', 'b', 'c']
print list[0]
print list[3]
报错信息如下:
Traceback (most recent call last):
File "hello.py", line 7, in <module
print list[3]
IndexError: list index out of range
解决方案:
检查list的索引值。
原因:
list的索引值超过了list元素的个数。
- KeyError
在python中,如果dict中的key不存在,则会报告KeyError: 'key'。
如下代码抛出了一个异常:
!/usr/bin/env python
-- coding:utf-8 --
dict = {'name': 'bai', 'age': '27'}
print dict['name']
print dict['address']
报错信息如下:
Traceback (most recent call last):
File "hello.py", line 7, in <module
print dict['address']
KeyError: 'address'
解决方案:
检查dict的key。
原因:
dict中不存在address这个key。
- TypeError
在python中,如果一个对象不是内置对象的实例,则会报告TypeError。
如下代码抛出了一个异常:
!/usr/bin/env python
-- coding:utf-8 --
print 'hello world'
print 'hello %
顺便介绍一下我的另一篇专栏, 《100天精通Python - 快速入门到黑科技》专栏,是由 CSDN 内容合伙人丨全站排名 Top 4 的硬核博主 不吃西红柿 倾力打造。 基础知识篇以理论知识为主,旨在帮助没有语言基础的小伙伴,学习我整理成体系的精华知识,快速入门构建起知识框架;黑科技应用篇以实战为主,包括办公效率小工具、爬虫、数据分析、机器学习、计算机视觉、自然语言处理、数据可视化等等,让你会用一段简单的Python程序,自动化解决工作和生活中的问题,甚至成为红客。
🍅 订阅福利:原价299,限时1折订阅专栏进入千人全栈VIP答疑群,作者优先解答机会(代码指导/学习方法指引),群里大佬可以抱团取暖(大厂/外企内推机会)
🍅 订阅福利:简历指导、招聘内推、80G全栈学习视频、300本IT电子书:Python、Java、前端、大数据、数据库、算法、爬虫、数据分析、机器学习、面试题库等等
🍅 专栏地址: 点击《100天精通Python - 快速入门到黑科技》