python break exit,python中for语句可以用break终止当前循环

  python break exit,python中for语句可以用break终止当前循环

  如果要执行代码,有两个函数可以选择,但是如果是复杂的语句块,就需要选择exec函数。这里有朋友在使用exec函数执行break语句时出错了。这里先不说原因。有些朋友对exec函数的基本内容了解不够。这里先说一下exec的语法、函数和参数,然后再分析一下突破实例执行错误的原因。

  1.语法

  exec(expression,globals=None,locals=None,/)2.作用

  动态执行Python代码。也就是说,exec可以执行复杂的Python代码,而不是像eval函数那样计算表达式的值。

  3.参数

  Object:必选参数,表示要指定的Python代码。它必须是字符串或代码对象。如果object是一个字符串,该字符串将被解析成一组Python语句,然后执行(除非有语法错误)。如果对象是一个代码对象,那么它只是被执行。

  Globals:可选参数,与eval函数相同。

  Locals:可选参数,与eval函数相同。

  4.实例

  i=5

  j=7

  n=0

  whileni:

  .打印(“循环”)

  .执行( ifj5:

  . n中断 )

  .n=1

  .

  环

  回溯(mostrecentcalllast):

  文件,第4行,位于

  文件“”,第3行

  TaxError : break 外部循环在这里。为什么exec函数会失败?

  根据Python文档,解释器执行break语句时,会跳出while和for语句最接近的循环。如果解释器找不到while和for循环,它将报告一个错误。因此,这里会报告一个错误,表明Python解释器没有在exec之前找到while循环。

  事实上,如果你仔细看文档,你会发现当解释器遇到exec函数时,它会独立执行字符串中的语句。如果有什么自变量,都是定义变量的字典。解释器不在字符串之外寻找语法结构。也就是说,在这个例子中,解释器将独立执行语句。

  以上就是我们没有用exec执行break语句的原因。如果不是先学习了exec函数的知识,就不会很好的理解为什么会出现这种错误。

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

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