windows – 在Python 3.3中捕获TimeoutExpired异常

前端之家收集整理的这篇文章主要介绍了windows – 在Python 3.3中捕获TimeoutExpired异常前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
很抱歉,如果这是一个新手问题,但我在 Python 3.3中捕获超时异常时遇到问题,在win7上运行,例如
import subprocess
try:
   subprocess.call("ping -t localhost",timeout=3)
except TimeoutExpired:
    print("Timeout happened.\n")

超时工作正常,根据我的pdb traceback,它说:
“提高TimeoutExpired(self.args,timeout)”

然而“除了TimeoutExpired:”并没有抓住它.此外,TimeoutExpired未列为
标准异常,并以nameError形式出现.

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

“未捕获的异常”

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

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

TimeoutExpired未全局定义;请改用subprocess.TimeoutExpired.

猜你在找的Windows相关文章