我需要从 Python 中发生的错误中获取错误号。
例如;尝试通过 Paramiko 包传输目录时,这段代码会出错:
try:
sftp.put(local_path,target_path)
except (IOError,OSError),errno:
print "Error:",errno
为此我得到了输出,
Error: [Errno 21] Is a directory
我想利用错误号进入更多代码来传输目录和目录内容。
最佳答案
感谢您澄清您的问题。
Python 中的大多数Exception
都没有“错误编号”。一个异常(没有双关语意)是 HTTPError
异常,例如:
import urllib2
try:
page = urllib2.urlopen("some url")
except urllib2.HTTPError, err:
if err.code == 404:
print "Page not found!"
else:
...
另一个异常(由 bobince 指出)是 EnvironmentError
:
import os
try:
f=open("hello")
except IOError, err:
print err
print err.errno
print err.strerror
print err.filename
输出
[Errno 2] No such file or directory: 'hello'
2
No such file or directory
hello
关于python - 获取错误的错误号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3241378/