python异常中的else作用,,一、概念异常:常见的


一、概念

异常:

常见的异常语句:

1. try except else2. try finally3. raise4. assert5. with as

二、else的作用

首先,了解一下exception和else在作用:

 except:捕获try中的异常项,如IndexException, SyntaxError等,即异常处理器;

 else:在try中不存在任何异常时,才会执行else中的语句;

这里,我想到了两个问题:1、else使用的时机是什么?2、存在与不存在else有什么区别?

示例1:

def fetcher(obj, index):return obj[index]x = ‘spam‘try:print fetcher(x, 3)except Exception:print ‘hhh‘else:print ‘has no exception‘print fetcher(x, 2)print ‘---‘ * 10try:print fetcher(x, 4)except IndexError:print ‘got exception‘else:print ‘has no exception‘print fetcher(x, 2)

  

 运行结果:

mhas no exceptiona------------------------------got exception

 

从上面的结果中可以看出,但try中存在异常时,不会执行else中的语句。这样,我们可以发现,如果在前面的语句发生异常时,后面的语句不需要继续执行下去,则可以放到else中

示例2:

def fetcher(obj, index):return obj[index]x = ‘spam‘try:print fetcher(x, 3)except Exception:print ‘hhh‘else:print ‘has no exception‘print fetcher(x, 2)print ‘---‘ * 10try:print fetcher(x, 4)except IndexError:print ‘got exception‘else:print ‘has no exception‘print fetcher(x, 2)

 结果为:

mhas no exceptiona------------------------------got exceptiona

  

从上面的结果中可以得出,如果没有else将其他代码在except的后面,不管try中是否存在异常,都会执行后面的语句

python异常中的else作用

评论关闭