pythoninput函数用法,python中input函数的用法举例

  pythoninput函数用法,python中input函数的用法举例

  来源:kqdsb微信官方账号:Python与数据分析链接:https://MP.weixin.QQ.com/s/6 jbv yl 1 yovbryvqcd 67 SG

  无论try语句是否引发异常,finally语句都将被执行。看看下面的例子。尝试:

  f=open(/tmp/output , w ).

  F.写(你好)))。

  #raiseexception(somethingwrong)).

  最后:

  打印(关闭文件))。

  F.close))最后,用try写文件时不管有没有异常,文件都会被关闭。由于finally的这一特性,finally经常被用于清洗。

  以下示例查看deffunc1(:)

  尝试:

  1次返回

  最后:

  2返回

  deffunc2(:)

  尝试:

  提高值错误(

  除了:

  1次返回

  最后:

  3返回

  打印(func1))

  Print(func2)(本例中为func1))和func2))它返回什么?答案是func1))返回2,func2))返回3。为什么会这样?首先,我们来看看Python官网上对finally的描述。afinallyclauseisalwaysexecutedbeforelevingthetrystement,无论是否发生异常。当在etryclauseandsnotbeenhandledbyanexceptionclause中发生异常时(在exexxcured中为红色),它会在执行完finallyclause之后重新引发

  重点用粗体表示。翻译成中文时,try块包含break、continue或return语句。在离开try块之前,finally语句也被执行。

  所以在上面的例子中,func1))在try块返回之前执行finally语句,忽略try返回,最后返回的值就是finally返回的值。Func2)),向try块抛出一个异常,由except捕获,在except块返回之前执行finally语句,忽略except返回,最终返回值最终返回。

  输入上面示例中的print语句,可以更清楚地看到流程def func1)):

  尝试:

  func 1try: try语句中的Print 将返回1

  1次返回

  最后:

  func1finally : try语句中的print 将返回2

  2返回

  deffunc2(:)

  尝试:

  print in func2try:引发错误

  提高值错误(

  除了:

  func2except:中的print 捕获到错误,将返回1!

  1次返回

  最后:

  print 在func2finally 3360中将返回3

  3返回

  打印函数1())。

  打印func1 try: try语句中函数2)的代码输出,将返回1

  在func1finally : try语句中,将返回2

  2

  在func2中尝试:引发错误

  在func2中except:捕捉到错误,将返回1!

  在func2中最后:将返回3

  3我们对上面的func2做了一些修改,如下:def func2():

  尝试:

  print in func2try:引发错误

  提高值错误(

  除了索引错误:

  func2except:中的print 捕获到错误,将返回1!

  1次返回

  最后:

  print 在func2finally 3360中将返回3

  3返回

  函数2))在func2 try中打印以下内容:引发错误。

  在func2中最后:将返回3

  3try抛出的异常属于ValueError类型,而except定位为索引错误类型,所以不会捕捉try抛出的异常,所以不会执行except语句,但不知道是否捕捉到异常。

  这里还可以看到其他问题。try中抛出的异常不会被捕获。本应在finally运行后再次抛出,但return在finally中执行,异常丢失。

  如你所见,在finally中使用return时会出现很多问题。在实际的APP应用中,最后,不建议使用return返回。

  多读

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: