怎么知道哪些函数可能会触发哪些异常?
#!/usr/bin/python# -*- coding: UTF-8 -*-
try:
fh = open("testfile", "w")
fh.write("这是一个测试文件,用于测试异常!!")
except IOError:
print "Error: 没有找到文件或读取文件失败"
else:
print "内容写入文件成功"
fh.close()
从以上程序,我们可以知道open函数会触发IOError,那么,假如文件open成功了?write会触发哪些异常呢?检测呢?
我的意思,哪些函数可能触发异常,哪些不可能,可能触发哪些异常,有没有专门集中的文档说明 --- 还是说,异常处不重要?你看到别人的程序,大致抄抄改改就行了?
回答:
看 Python 的官方文档啊。
不知道就直接用 except
,后面不带异常类型、或者带 BaseException
(所有异常的基类),这样就捕捉所有异常了。
REF: https://docs.python.org/zh-cn...
注:我截图的是 Python 3.8 的文档。从 3.3 开始,IOEror
和其他几个异常类型被合并到 OSError
里了。
回答:
一个方法是看官方文档@然后去远足已经提过了,如果你觉得上官网搜索比较复杂的话,不知道你用的是什么ide,ide点进相应方法的源码,看下源码部分,除了native方法(没有python源码的,是C语言直接写的)之外大多数都有写有可能throw 什么 Exception。
当然,从实用性角度看,为了代码先至少可以运行,可以就先写except
。
回答:
Java的优势这就体现出来了
Python就管不了那么多啦,能跑起来就行 hhhhhh
回答:
捕捉几个常用的,可以看看文档,或者调试时候最有可能出现的单独捕捉下,其他我一般都是放在一起打印的。
except Exception as result: print("错误位置: %s" % result)
回答:
根据参数来查看异常,第一个参数是文件,没有找到文件会抛异常,第二个参数是文件读写方法,方法不对会抛异常,第三个是字符类型,类型不对会抛异常。
回答:
感谢,同学们的解答。看源代码就算了,我还是查一下文档吧,其实我还是看网友的文章更多 :)
以上是 怎么知道哪些函数可能会触发哪些异常? 的全部内容, 来源链接: utcz.com/p/937828.html