在审查系统库
这段代码是过时的遗物,还是有平台/实现不支持
编辑说明:为了澄清问题:我必须测试在
socket.py
实现时,我遇到了这段代码。try:
import errno
except ImportError:
errno = None
EBADF = getattr(errno, 'EBADF', 9)
EINTR = getattr(errno, 'EINTR', 4)
这段代码是过时的遗物,还是有平台/实现不支持
errno
模块?更明确地说,没有异常处理器是否安全地导入 errno
?我对 Python 2.x 和 3.x 的答案都感兴趣。编辑说明:为了澄清问题:我必须测试在
socket
模块中引发的 IOError
异常中编码的错误代码。上述代码位于 cpython 代码库中的 socket.py,让我怀疑在某些已知情况下,socket
可用但 import errno
将失败。也许这是一个次要问题,但我想避免不必要的代码。
IOError
中获取当前的errno
,并且正在寻找一种可移植的测试不同错误原因的方法。类似于if curr_errno == errno.ENOENT then:
... 只是想知道errno
模块是否真的是可移植的。 - Stefano M