首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python异常处理该怎么办?

Python异常处理该怎么办?
EN

Stack Overflow用户
提问于 2018-03-16 07:18:54
回答 2查看 0关注 0票数 0

我想知道在python中正常处理IOError异常时,抓取errno的正确方法是什么?

代码语言:javascript
复制
在[1]中:fp = open(“/ notthere”)
---------------------------------------------------------------------------
IOError追踪(最近一次调用最后)

/ home / mugen / in()

IOError:[Errno 2]没有这样的文件或目录:'/ notthere'


在[2]中:fp = open(“test / testfile”)
---------------------------------------------------------------------------
IOError追踪(最近一次调用最后)

/ home / mugen / in()

IOError:[Errno 13]权限被拒绝:'test / testfile'


在[5]中:尝试:
   ...:fp = open(“nothere”)
   ...:除了IOError:
   ...:打印“由于某种原因失败......”
   ...:     
   ...:     
由于某种原因,这失败了......
EN

回答 2

Stack Overflow用户

发布于 2018-03-16 16:17:54

例外有一个errno属性:

代码语言:javascript
复制
try:
    fp = open("nothere")
except IOError as e:
    print(e.errno)
    print(e)
票数 0
EN

Stack Overflow用户

发布于 2018-03-16 16:46:43

这是你如何做到的。另请参阅某些实用程序的errno模块和os.strerror功能。

代码语言:javascript
复制
import os, errno

try:
    f = open('asdfasdf', 'r')
except IOError as ioex:
    print 'errno:', ioex.errno
    print 'err code:', errno.errorcode[ioex.errno]
    print 'err message:', os.strerror(ioex.errno)

有关IOError属性的更多信息,请参阅基类EnvironmentError:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档