写代码肯定会遇到异常,比如我们要处理一个证整数,你输入了一个整数,或者我们要打开的文件不存在,也会异常….
这个时候我们需要一个try来解决这个问题
try的格式是:
1 2 3 4 |
try: #可能出现错误的代码 except: #错误恢复代码,就是遇到错误之后不是停止程序,二是执行这段代码 |
看一个例子:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#!/usr/bin/env python # coding=utf-8 try: data = open('test.txt') for each_line in data: try: (name,score) = each_line.split(":") print "%s got : %s " % (name,score) except ValueError: pass data.close() except IOError: print "The data file is missiing" |
上边的例子就是打开一个文档test.txt,内容为:
1 2 3 4 |
jaymz:123 zhiming:100 liuliu:121 tutut:131 |
那么我们可能碰到的错误有哪些?
文件不存在? 是的,如果文件不存在
1 |
data = open('test.txt') |
就会出现错误,然后会跳出整个异常
还有呢?
split可能出现错误,是的,我们如果添加了一个
xiaoming:123123:123234
我们会得到什么样的结果?
程序会正常执行,为什么呢?
因为读取到最后一行异常之后,我们跑到了pass
所以程序会继续执行
finally的作用就是:
如果没有异常:执行完try然后执行finally
如果有异常:执行到一般的try挑转到except然后最后再执行finally
Latest posts by Zhiming Zhang (see all)
- aws eks node 自动化扩展工具 Karpenter - 8月 10, 2022
- ReplicationController and ReplicaSet in Kubernetes - 12月 20, 2021
- public key fingerprint - 5月 27, 2021