知行编程网知行编程网  2023-01-09 04:30 知行编程网 隐藏边栏  0 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python中如何处理异常的相关知识,包括python异常处理try,以及python中可调用对象这些编程知识,希望对大家有参考作用。

如何在 python 中处理异常

Python中的异常(Exception)处理


异常

当你的程序出现异常时,就会发生异常。例如,当你想读取一个文件,但那个文件不存在时,你会怎么做?或者程序运行的时候不小心删了,怎么办?这些是使用异常处理的。

同样,如果你的程序中出现了一些无效的语句怎么办? Python 会处理这个,举起它的小手告诉你哪里发生了错误。


错误

你可以想象一个简单的打印函数调用。如果我们将 print 拼错为 Print 怎么办?你会注意到它的首字母大写。在此示例中,Python 将抛出 (Raise) 语法错误。

>>> Print("Hello World")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>NameError: name 'Print' is not defined >>> print("Hello World")
Hello World

你会注意到抛出了 NameError,并且 Python 会打印出检测到的错误发生的位置。这就是 Error Handler 2 为这个错误做的事情。


异常

我们将尝试(Try)读取用户输入。按 [ctrl-d] 看看会发生什么。

>>> s = input('Enter something --> ')
Enter something --> Traceback (most recent call last):
  File "<stdin>", line 1, in <module>EOFError

这里 Python 指出了一个名为 EOFError 的错误,这意味着它在不应该的时候找到了文件结束符号(由 ctrl-d 实现)。


处理异常

我们可以使用 try..except 来处理异常。通常我们会将常用语句放在 try 块中,将错误处理程序代码放在 except 块中。

案例(保存文 exceptions_handle.py):

try:
    text = input('Enter something --> ') except EOFError:
    print('Why did you do an EOF on me?') except KeyboardInterrupt:
    print('You cancelled the operation.') else:
    print('You entered {}'.format(text))

输出

# Press ctrl + d
$ python exceptions_handle.py
Enter something --> Why did you do an EOF on me?

# Press ctrl + c
$ python exceptions_handle.py
Enter something --> ^CYou cancelled the operation.

$ python exceptions_handle.py
Enter something --> No exceptions
You entered No exceptions

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享