当前位置:   article > 正文

python try用法_try,raise等的python的使用方法介绍

python try用法_try,raise等的python的使用方法介绍

正常写代码时会遇到错误,导致错误之后代码无法继续(错了为啥还要继续……界面友好呗,别让别人用着用着崩溃了……)。所以提出了try...except(这个java的tyy...catch很像)。一个try至少带一个except(或finally,见下一个),except负责处理异常,可以处理一个或多个,多个可以用括号括起来,逗号分隔,或者不写表示处理所有。

1 try:

2 pass

3 except (IOError ,ZeroDivisionError),e:

4 print e

5 #这里面就是处理了两个异常,另外,那个e前需要一个逗号哟

try ....except...else 语句,当没有异常发生时,else中的语句将会被执行。

例子:

copycode.gif

1 a=10

2 b=0

3 try:

4 c = b/ a

5 print c

6 except (IOError ,ZeroDivisionError),x:

7 print x

8 else:

9 print "no error"

10 print "done"

copycode.gif

运行结果:

0

no error

done

*************

另外,try也可以和finally连用,包括try...except...finally也是可以的,这个和JAVA一样,无论结果如何都会执行finally内的代码。

*************

raise也可以抛出异常,它是“引发一个异常”(引发?是不是说其实不一定真的有异常,但可以强制抛出来一个?)

例子:如果输入的数据不是整数,则引发一个ValueError

1 inputValue=input("please input a int data :")

2 if type(inputValue)!=type(1):

3 raise ValueError

4 else:

5 print inputValue

假设输入1.2,运行结果为:

please input a int data :1.2

Traceback (most recent call last):

File "C:/Users/lirong/PycharmProjects/untitled/openfile.py", line 3, in

raise ValueError

ValueError

如果输入1,运行结果为:

please input a int data :1

1

*********

最后呢,还可以自己自定义异常(重点是格式):

自定义一个MyException类,继承Exception。

1 class MyException(Exception):

2 def __init__(self,message):

3 Exception.__init__(self)

4 self.message=message

如果输入的数字小于10,就引发一个MyException异常:

1 a=input("please input a num:")

2 if a<10:

3 try:

4 raise MyException("my excepition is raised ")

5 except MyException,e:

6 print e.message

运行结果:

please input a num:1

my excepition is raised

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/205102
推荐阅读
相关标签
  

闽ICP备14008679号