2021-08-25
课程介绍
1、bug的由来及分类
2、不同异常类型的处理方式
3、异常处理机制
4、pycharm的调试模式
96、BUG的由来及分类
BUG的由来:世界上第一步万用计算机的进化版-马克2号(Mark II),计算机之母用这个巨型计算机的时候,被一只虫子卡住了零件,导致计算机故障,计算机之母就把这只虫子做成标本,并命名为臭虫子-bug
Debug:排除故障
97、BUG的常见类型
粗心导致的语法错误
1、用字符串进行算数比较
2、未给i赋予初始值,且使用中文括号
3、两个等号是比较,一个等号是赋值
image.png image.png image.png
98、bug常见类型-知识点不熟练
image.png孰能生巧
99、bug常见类型-思路不清导致的问题
image.png image.png image.png##99、bug常见类型-思路不清导致的问题
lst=[{'rating':[9.7,2062397],'id':'1292052','type':['犯罪','剧情'],
'title':'肖申克的救赎','actors':['蒂姆.罗宾斯','摩根']},
{'title':'霸王别姬','actors':['张国荣','葛优']}]
name=input('请输入你要查询的演员:')
for item in lst:
act_lst=item['actors']
for actor in act_lst:
if name in actor:
print(name,'出演了',item['title'])
100、bug的常见类型-别动掉坑-try-except
image.png image.png image.png##100、bug的常见类型-别动掉坑-try-except
try:
a = int(input('请输入第一个整数'))
b = int(input('请输入第二个整数'))
result = a / b
print('结果为:', result)
except ZeroDivisionError:
print('对不起,除数不允许为0')
except ValueError:
print('只能输入数字串')
print('程序结束')
101、try-except-else与try-except-finally结构
image.png image.png##101、try-except-else与try-except-finally结构
try:
a = int(input('请输入第一个整数'))
b = int(input('请输入第二个整数'))
result = a / b
except BaseException as e:
print('出错了',e)
else:
print('计算结果为:',result)
try:
a = int(input('请输入第一个整数'))
b = int(input('请输入第二个整数'))
result = a / b
except BaseException as e:
print('出错了',e)
else:
print('计算结果为:',result)
finally:
print('谢谢您的使用')
102、Python中常见的异常类型
image.png##102、Python中常见的异常类型
lst=[11,22,33,44] #索引从0开始
#print(lst[4]) #IndexError: list index out of range
dic={'name':'张三','age':20}
#print(dic['gender']) #KeyError: 'gender'
#print(num) #NameError: name 'num' is not defined
#int a=20 #SyntaxError: invalid syntax 语法错误
#a=int('hello') #ValueError 传入无效的参数
103、traceback模块的使用
image.png使用traceback将异常存入日志里
##103、traceback模块的使用
import traceback
try:
print('----------')
print(1/0)
except:
traceback.print_exc()
104、pycharm的程序调试
image.pngimage.png
网友评论