一、常见bug类型
1、粗心导致的语法错误。解决方案——>查看自查宝典
2、知识点不熟悉导致的错误。解决方案——>不断的练习
3、思路不清导致的错误。解决方案——>使用print()语句和注释
4、代码逻辑没错,用户操作不正确导致的错误。解决方案——>使用异常处理机制
二、try…except…else…finally 结构
语法结构:try:
可能会抛出异常的代码
except 异常类型:
异常处理代码(报错后执行的代码)
else:
没有抛异常要执行的代码
finally:
无论是否产生异常都要执行的代码
# 捕捉多个异常
try:
num1 = int(input('请输入一个整数:'))
num2 = int(input('请输入另一个整数'))
result = num1 / num2
print('结果:', result)
except ZeroDivisionError:
print('除数不能为0')
except ValueError:
print('不能将字符串转成整数')
except BaseException:
print('未知异常')
# 在确认无异常后输出最终结果
try:
num1 = int(input('请输入一个整数:'))
num2 = int(input('请输入另一个整数'))
result = num1 / num2
except ZeroDivisionError:
print('除数不能为0')
except ValueError:
print('不能将字符串转成整数')
except BaseException:
print('未知异常')
else:
print('结果:', result)
# 以finally语句结尾
try:
num1 = int(input('请输入一个整数:'))
num2 = int(input('请输入另一个整数'))
result = num1 / num2
except ZeroDivisionError:
print('除数不能为0')
except ValueError:
print('不能将字符串转成整数')
except BaseException:
print('未知异常')
else:
print('结果:', result)
finally:
print('程序执行结束!')
三、raise 关键词
1、作用:
抛出一个异常,从而提醒程序出现了异常情况,程序能够正确地处理这些异常情况
2、语法结构:
raise [Exception类型(异常描述信息)]
try:
gender=input('请输入您的性别:')
if gender!='男'and gender!='女':
raise Exception('性别只能是男或女')
else:
print('您的性别是:',gender)
except Exception as e:
print(e)
# 输入1:男
# 输出1:您的性别是: 男
# 输入2:不知道
# 输出2:性别只能是男或女
四、常见异常类型
五、Pycharm中的程序调试
1、设置断点
2、进入调试视图
3、开始调试
(1)程序控制窗口介绍
(2)调试控制窗口介绍
(3)程序调试窗口
微语:积极向上的生活,热气腾腾的活着。