Python try/except 不断尝试直到没有错误

标签 python exception exception-handling try-catch

我的以下代码偶尔会因权限错误而崩溃。我试图将其包装在 try/except 语句中,该语句将继续尝试启动驱动程序直到成功...

def init_driver():
    ffprofile = webdriver.FirefoxProfile("my_profile")
    ffprofile.add_extension(extension="myaddon.xpi")
    return driver

driver = init_driver()

我见过一些例子,让我在发生错误时打印一条消息,但我如何让它继续重试?有人可以举个例子吗?

最佳答案

这是一个迭代尝试的循环:

while True:
    try:
        driver = init_driver()
        break
    except Foo:
        continue

请注意,这不是一个简单的 except 子句。裸露的 except 是危险的,因为它们可以捕获像 NameError 这样很少被捕获的东西。您应该在此处放置您希望捕获的特定异常。

关于Python try/except 不断尝试直到没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36523984/

相关文章:

Python:使用另一个数组的元素作为键对数组进行排序?

python - 在 Python 中,从生成器构造循环子群

java - 如果需要用户输入整数,如何处理无效输入?

c# - 如何处理 System.IndexOutOfRangeException

java - finally block 对于清理代码真的有必要吗(比如关闭流)?

ruby - 救援超时::来自Redis Gem的错误(Ruby)

python - 搜索模式不唯一? - 正则表达式

python - Canvas (和/或标签框)背景,奇数灰色

haskell - 在 Happstack 请求处理程序中捕获程序错误

java - 为什么你会捕获 Throwable 而除了打印堆栈跟踪之外什么都不做?