finally语句的保留字定义是无论如何都要执行,即使try和cxcept语句中出现了return,也要先执行finally,假如raise出现异常后,那finally的语句还会继续执行吗?如果执行了,执行完了会发生什么情况?
还有“or在运算中运算过程中所有值为假,那么返回最后一个假值,否则返回逻辑运算过程中第一个真值”这句话怎么理解,主要是后面两句,为什么可以返回最后一个假值,也可以返回第一个真值?
try块中包含break、continue或者return语句的,在离开try块之前,finally中的语句也会被执行。
不管你在try cxcept中执行了啥,finally都会执行。
raise是在哪儿抛出的依次呀,try下面?那就执行cxcept和finally下的语句
cxcept下面还抛出一个错误?那就执行finally下的语句然后抛出异常
or运行是:
反回第一个真值:0 or 1 or 1
or是不是只要有真就为真,它是从左往右执行的,0,假,然后执行第一个1,为真,那就直接返回这个1,因为都已经为真了,后面的语句就不用去执行了。
返回最后一个假值 :0 or 0 or 0:
第一个为0:假,往后执行,假,在往后执行,还是假,但后面没有判断条件了,那它就会返回最后一个值。