python编程try。。raise的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python编程try。。raise的问题相关的知识,希望对你有一定的参考价值。

def assertequal(self, driver, title, exptitle):
try:
self.assertEqual(title, exptitle, '对比失败')
except AssertionError:
Page.insert_img(driver, 'lctest2.png')
raise AssertionError('对比失败啦')

if __name__ == '__main__':
driver = webdriver.Ie()
driver.get("https://www.baidu.com")
page = Page()
page.assertequal(driver, 'a', 'a')
driver.quit()

为什么加上最后的raise就会报错呢

参考技术A 因为raise就是抛出错误的意思 参考技术B 因为不相溶,

python异常处理--try except else raise finally

写程序时遇到异常情况,程序可能无法正常运行。此时就需要引入异常处理

1.try ...except

try 后面写正常运行的程序代码,except即为异常情况

 1 a=3
 2 b=2
 3 for i in range(5):
 4     try:
 5         a = a - 1
 6         c=b/a
 7         print(c)
 8 
 9     except Exception as e:
10         print(e)#输出异常行为名称

结果显示如下,异常行为的名称为(division by zero)

技术分享图片

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

a=3
b=2
for i in range(3):
    try:
        a = a - 1
        c=b/a
        print(c)

    except Exception as e:
        print(e)
    else:
        print("正常运行")

发生异常时,else的语句没有被运行

技术分享图片

3.

当执行try ...finally 语句时,无论异常是否发生,在程序结束前,finally中的语句都会被执行。

#Author:wang yue
a=3
b=2
for i in range(3):
    try:
        a = a - 1
        c=b/a
        print(c)

    except Exception as e:
        print(e)
    else:
        print("正常运行")
    finally:
        print("finally")

技术分享图片

4.raise引发一个异常,比如,当一个条件不满足用户意愿时引发一个异常

a=3
if a<4:
    raise Exception
else: print(a)

技术分享图片

 

以上是关于python编程try。。raise的问题的主要内容,如果未能解决你的问题,请参考以下文章

python异常处理--try except else raise finally

python 错误处理:try..except..finally / logging / raise

python 异常处理小结 try except raise assert

python raise和assert的区别

python中raise的用法

raise的使用