我想移动一个文件,但如果找不到它,我应该忽略它。在所有其他情况下,应传播异常。我有以下一段 Python 代码:
try:
shutil.move(old_path, new_path)
except IOError as e:
if e.errno != 2: raise e
errno == 2 是具有“没有这样的文件或目录”描述的那个。我想知道这在 Python 版本和平台等方面是否稳定。
我想移动一个文件,但如果找不到它,我应该忽略它。在所有其他情况下,应传播异常。我有以下一段 Python 代码:
try:
shutil.move(old_path, new_path)
except IOError as e:
if e.errno != 2: raise e
errno == 2 是具有“没有这样的文件或目录”描述的那个。我想知道这在 Python 版本和平台等方面是否稳定。
最好使用errno模块中的值,而不是硬编码值2
:
try:
shutil.move(old_path, new_path)
except IOError as e:
if e.errno != errno.ENOENT: raise e
这使得您的代码不太可能在整数错误值更改时中断(尽管这不太可能发生)。