1.1异常问题示例示例1>>>i=input('请输入数字')请输入数字:0>>>print(i)0>>>print(5/int(i))Traceback(最recentcalllast):File"",line1,inZeroDivisionError:divisionbyzero上面代码报的错误是除零错误,数学中不允许除以零Example2>>>i="QWE">>>print(5/int(i))Traceback(最近调用最后):文件“”,第1行,在ValueError:int()的无效文字与base10:'QWE'i是string类型,而且是QWE,无法转成int类型,所以抛出异常。1.2异常类继承层次Python中的异常根类是BaseException,结构图如下:BaseException+--SystemExit+--KeyboardInterrupt+--GeneratorExit+--Exception+--StopIteration+--StandardError|+--缓冲区错误|+--算术错误||+--浮点错误||+--溢出错误||+--零除错误|+--断言错误|+--属性错误|+--环境错误||+--IO错误||+--操作系统错误||+--视窗错误(视窗)||+--VMS错误(VMS)|+--EOFError|+--导入错误|+--查找错误||+--索引错误||+--键错误|+--内存错误|+--名称错误||+--未绑定本地错误|+--引用错误|+--运行时错误||+--未实现错误|+--语法错误||+--缩进错误||+--制表错误|+--系统错误|+--类型错误|+--值错误|+--统一码错误|+--统一码解码错误|+--统一码编码错误|+--UnicodeTranslateError+--警告+--DeprecationWarning+--PendingDeprecationWarning+--RuntimeWarning+--SyntaxWarning+--UserWarning+--FutureWarning+--ImportWarning+--UnicodeWarning+--BytesWarning1.3常见异常1.3.1AttributeError异常访问不存在的成员例如>>>classAnimal(object):pass>>>a1=Animal()>>>a1.run()Traceback(最近调用最后一次):文件“”,第1行,在a1.run()AttributeError:'Animal'objecthasnoattribute'run'>>>>>>print(a1.age)Traceback(最近调用last):文件“”,第1行,在print(a1.age)AttributeError:'Animal'objecthasnoattribute'age'AclasscalledAnimalwascreated程序中,但是没有run函数和age变量,所以抛出异常1.3.2OSError异常OSError是操作系统相关的异常,比如试图打开一个不存在的文件>>>f=open("abc.txt")回溯(最近调用最后一次):文件“”,第1行,在f=open(“abc.txt”)FileNotFoundError:[Errno2]Nosuchfileordirectory:'abc.txt'1.3.3IndexError异常是当下标超过最大值或最小值时of访问元素时的索引。例如:>>>code_list=[125,56,89,36]>>>code_list[4]Traceback(最近调用最后):文件“",line1,incode_list[4]IndexError:listindexoutofrange1.3.4KeyError异常是由于试图访问字典中不存在的键导致的,例如:>>>dict1[104]Traceback(最近调用最后):文件“”,第1行,在dict1[104]NameError:name'dict1'isnotdefined104doesnotexistinthedictionary,O(∩_∩)O哈哈~然后报错1.3.5NameError异常NameError是指尝试使用不存在的变量导致的异常在PythonShell中运行实例>>>value1Traceback(最近调用last):文件“”,第1行,在NameError:名称“value1”未定义>>>a=value1Traceback(最近调用最后):文件“”,第1行,在NameError:name'value1'isnotdefined>>>value1=10>>>value110赋值和直接取值不能使用,因为没有value1变量,只有最后一个value1=10,所以value1的值为1.3。6TypeError异常类型错误是试图传入一个不符合要求的变量类型不时抛出Exception。PythonShell运行实例,>>>i='2'>>>print(5/i)Traceback(最近一次调用最后):文件“”,第1行,在>>deli>>>i='QWE'>>>print(5/int(i))Traceback(mostrecentcalllast):File"",line1之前遇到过这个异常,在print(5/int(i))ValueError:invalidliteralforint()withbase10:'QWE'1.4forcatchingexceptions我不能捕捉异常,我不能使用try和except,等等.我看不懂...