Bug的常见类型:
一、粗心导致的语法错误SyntaxError;
粗心导致错误的自查宝典:
1、漏了末尾的冒号,如if语句,循环语句,else语句等
2、缩进错误,该缩进的没缩进,不该缩进的瞎缩进
3、把英文符号写成中文符号,比如:引号,冒号,括号
4、字符串拼接的时候,吧字符串和数字拼在一起
5、没有定义变量,比如说while的循环条件的变量
6、’=='比较运算符和‘=’赋值运算符的混用
二、知识点不熟练导致的错误:
python的异常处理机制:python提供了异常处理机制,可以在异常出现即时捕获,然后内部“消除化”,让程序继续运行。
第一种:一个try多个except
代码如下:
try:
a = int(input('请输入第一个整数:'))
b = int(input('请输入第二个整数:'))
result = a / b
print(result)
except ZeroDivisionError:
print("对不起,除数不能为0")
except ValueError:
print("只能输入数字串")
print("程序结束")
运行结果:
请输入第一个整数:10
请输入第二个整数:0
对不起,除数不能为0
程序结束
Process finished with exit code 0
第二种try…except…else结构
如果try块中没有抛出异常,则执行else块,如果try中抛出异常执行except块。
代码如下:
try:
a = int(input('请输入第一个整数:'))
b = int(input('请输入第二个整数:'))
result = a / b
except BaseException as e:
print('出错了')
else:
print(result)
运行结果:
请输入第一个整数:10
请输入第二个整数:2
5.0
Process finished with exit code 0
三、try…except…else…finally结构
finally块无论是否发生异常都会被执行,能常用释放try块中申请的资源
代码如下:
try:
a = int(input('请输入第一个整数:'))
b = int(input('请输入第二个整数:'))
result = a / b
except BaseException as e:
print('出错了',e)
else:
print(result)
finally:
print("谢谢您的使用")
运行结果:
请输入第一个整数:10
请输入第二个整数:0
出错了 division by zero
谢谢您的使用
Process finished with exit code 0
python中常见的异常类型: