Python中的两类错误:
语法错误(syntax Errors)
异常(Exceptions)
while True:
try:
a = int(input("please enter a number\n"))
break
except ValueError:
print("Not valid input,try again...")
首先,try语句下的(try和except) 之间的代码被执行
1、如果没有出现异常,except语句将被忽略
2、如果try语句之间出现了异常,try之下异常之后的代码被忽略,直接跳跃到except语句
3、如果异常出现,但并不属于except中定义的异常类型,程序将执行外围一层的try语句,如果异常没有被处理,将产生unhandeled exception 的错误
栗子:
try:
f = open("myfile.txt")
s = f.readline()
i = int(s.strip())
except OSError as err:
print("OS error:{0}".format(err))
except ValueError:
print("could not convert data to an integer")
假设目录下没有生成 myfile.txt,则程序报出系统错误:
OS error:[Errno 2] No such file or directory: 'myfile.txt'
假设目录下的 myfile.txt 中包含字符或字符串

则程序报出系统错误:
could not convert data to an integer
假设目录下的 myfile.txt 中全为数字,则运行通过
本文深入探讨了Python中的异常处理机制,包括语法错误和异常的种类,通过实例演示了如何使用try-except语句来捕获并处理不同类型的异常,如ValueError和OSError。
2152

被折叠的 条评论
为什么被折叠?



