自学内容网 自学内容网

Python 异常处理

# 1 通常异常

from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException, TimeoutException, ElementClickInterceptedException, ElementNotVisibleException

driver = webdriver.Chrome()

try:
    # 尝试执行的代码
    pass
except NoSuchElementException:
    # 针对错误类型1,对应的代码处理
    pass
except TimeoutException:
    # 针对错误类型2,对应的代码处理
    pass
except(ElementClickInterceptedException, ElementNotVisibleException):
    # 针对错误类型3和4,对应的代码处理
    pass
except Exception as e:
    # 打印错误信息
    print(e)
else:
    # 如果try块中没有异常,对应的代码处理
    pass
finally:
    # 无论是否出现异常,都会执行的代码
    print('无论是否有异常,都会执行的代码')
# 2 抛出异常:使用 raise 关键字来抛出异常

def divide(a, b):
    if b == 0:
        raise Exception("除数不能为零")
    return a / b


try:
    divide(3, 0)
except Exception as e:
    print(e)
# 3 自定义异常类: 自定义异常类需要继承自 Exception 类。
class CustomError(Exception):
    def __init__(self, msg):
        self.msg = msg

    def __str__(self):
        return self.msg


def add(a, b):
    if a < 0 or b < 0:
        raise CustomError("自定义的异常")
    return a + b
'''
参考:
【python】异常处理
https://blog.csdn.net/w3360701048/article/details/137504337
2024年Python最全python异常(概念、捕获、传递、抛出)_异常python(2)
https://blog.csdn.net/2401_84584796/article/details/138355865
Python异常处理:三种不同方法的探索与最佳实践
https://blog.csdn.net/weixin_45081575/article/details/134356343
Selenium异常集锦
https://www.cnblogs.com/FunTester/p/13844892.html
'''

原文地址:https://blog.csdn.net/yudiandian2014/article/details/140575839

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!