Python返回语句错误"';返回';“外部功能”;
运行以下代码时(在mac OS X 10.7上的Python 2.7.1中) 我得到以下错误Python返回语句错误"';返回';“外部功能”;,python,Python,运行以下代码时(在mac OS X 10.7上的Python 2.7.1中) 我得到以下错误 SyntaxError: 'return' outside function 我已经仔细检查了错误的标签和/或空格。当我使用建议的4个缩进空格时,我可以确认代码失败并出现上述错误。当返回放在其他控制语句(例如if、for等)中时,也会发生这种行为 任何帮助都将不胜感激。谢谢 返回语句仅在函数内部有意义: def foo(): while True: return False
SyntaxError: 'return' outside function
我已经仔细检查了错误的标签和/或空格。当我使用建议的4个缩进空格时,我可以确认代码失败并出现上述错误。当返回放在其他控制语句(例如if、for等)中时,也会发生这种行为
任何帮助都将不胜感激。谢谢 返回语句仅在函数内部有意义:
def foo():
while True:
return False
要中断循环,请使用
break
而不是return
或者将循环或控件构造放入函数中,只有函数才能返回值。在此上下文中使用
quit()
break
应位于循环内,return
应位于函数内。根据语句中的文档,return
只能以语法嵌套方式出现在函数定义中。同样的道理。解释器说,你不在函数中。控制语句不是函数,你用def
定义一个函数。你可能在寻找break
。我使用yield
,这给了我同样的错误,原因是一样的,应该在函数中..Raymond,你是否获得了如此多的代表分数,以至于你的计数器回滚到0?@PaulMcGuire:你的评论让我困惑。@PaulMcGuire他的帐户只存在了三天。我将命名为我的第一个孩子@Raymond HettingerI。我一直在为此失眠,以防你只想停止脚本,就像你在使用无效返回时所做的那样。不过,我宁愿使用sys.exit(),因为这样可以指定退出状态。检查此问题:
def foo():
while True:
return False