面试题答案
一键面试SyntaxError
:当Python解释器遇到语法错误时抛出,比如代码中括号不匹配、关键字拼写错误等情况。例如if 1 > 0: print('Hello')
(少了冒号会导致此异常)。NameError
:尝试访问一个未定义的变量时抛出。例如print(a)
,而在这之前没有定义变量a
。TypeError
:当操作或函数应用于不适当类型的对象时抛出。比如'abc' + 1
,字符串和整数不能直接相加。IndexError
:当使用的索引超出序列范围时抛出。例如lst = [1, 2, 3]; print(lst[3])
,列表lst
只有0、1、2三个索引,访问索引3会触发此异常。KeyError
:当试图访问字典中不存在的键时抛出。例如d = {'a': 1}; print(d['b'])
,字典d
中没有键b
。ZeroDivisionError
:当尝试用零作除数时抛出。例如result = 1 / 0
。FileNotFoundError
:当试图打开一个不存在的文件时抛出。例如with open('nonexistent_file.txt', 'r') as f:
,若当前目录下不存在nonexistent_file.txt
文件就会引发此异常。