Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中,如何在出现keyerror异常时继续执行try块_Python_Python 3.x_Python 2.7_Jython 2.7 - Fatal编程技术网

在python中,如何在出现keyerror异常时继续执行try块

在python中,如何在出现keyerror异常时继续执行try块,python,python-3.x,python-2.7,jython-2.7,Python,Python 3.x,Python 2.7,Jython 2.7,在上面的示例中,createTask()在循环中运行,并且每次运行的键都会更改,如果某个特定运行的键1处存在KeyError,如何继续执行key2?可能这样做: 对于键,zip中的val([k1,k2,k3],[v1,v2,v3]): 尝试: key=val 除KeyError外: 通过 最后: createTask() 由于您只需传递KeyError,因此可以使用dictget来避免触发KeyError。然后,您只需确保createTask()足够智能,可以检测到这种情况 try:

在上面的示例中,createTask()在循环中运行,并且每次运行的键都会更改,如果某个特定运行的键1处存在KeyError,如何继续执行key2?

可能这样做:

对于键,zip中的val([k1,k2,k3],[v1,v2,v3]):
尝试:
key=val
除KeyError外:
通过
最后:
createTask()

由于您只需传递KeyError,因此可以使用
dict
get
来避免触发
KeyError
。然后,您只需确保
createTask()
足够智能,可以检测到这种情况

    try:
        key1 = val1
        key2 = val2
        key3 = val3
    except KeyError:
        pass
    finally:
        createTask()

你不能。当出现异常时,您立即退出
try
并输入
except
。是否有其他方法可以实现此目的?使用三种不同的
try。。。除了
块之外?它有一长串的键
如果键1上有KeyError
您没有任何可能触发
KeyError
的操作。请显示循环
createTask()
在中运行。
    key1 = your_dict.get(val1, None)
    key2 = your_dict.get(val2, None)
    key3 = your_dict.get(val3, None)
    createTask()