小编Sar*_*ode的帖子

在Python 3.3中捕获TimeoutExpired异常

很抱歉,如果这是一个新手问题,但我在Python 3.3中捕获超时异常时遇到问题,在win7上运行,例如

import subprocess
try:
   subprocess.call("ping -t localhost", timeout=3)
except TimeoutExpired:
    print("Timeout happened.\n")
Run Code Online (Sandbox Code Playgroud)

超时工作正常,根据我的pdb traceback,它说: "raise TimeoutExpired(self.args, timeout)"

然而"除了TimeoutExpired:"并没有抓住它.此外,TimeoutExpired未列为标准异常,而是作为nameError出现.

如果我尝试"except TimeoutError:"而不是"except TimeoutExpired:",我没有收到错误消息,但在pdb中,我得到:

"Uncaught exception"

并且在任何情况下都不会执行print命令.

这是一个错误,还是我做错了什么?

windows exception python-3.3

9
推荐指数
1
解决办法
3754
查看次数

标签 统计

exception ×1

python-3.3 ×1

windows ×1