为什么在Python中的“if”name_yu==“优main_u”`中不能执行return

2024-10-01 15:37:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在写一个程序,我需要程序返回一个整数,比如changed,以提醒控制器有一些东西改变了。但是当我想返回此值时,我一直收到以下消息:

 return 1
 SyntaxError: 'return' outside function

我在网上读过一些帖子,他们都说是缩进问题,但我确信我的缩进是正确的,因为我试过这么简单的程序,但失败仍然存在。在

^{pr2}$

以下是错误消息:

runfile('/home/iphyer/untitled1.py', wdir='/home/iphyer')
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "/usr/local/lib/python2.7/dist-packages/spyderlib/widgets/externalshell/sitecustomize.py", line 699, in runfile
 execfile(filename, namespace)
  File "/usr/local/lib/python2.7/dist-packages/spyderlib/widgets/externalshell/sitecustomize.py", line 81, in execfile
builtins.execfile(filename, *where)
  File "/home/iphyer/untitled1.py", line 9
   return 1
  SyntaxError: 'return' outside function

虽然我真正的程序比这个复杂,但结构是一样的。在

我很困惑,因为如果我注释return语句,所有程序都可以在没有任何警告的情况下运行。在

真是令人困惑。我想我不能用if __name__ == "__main__来表示return的某个值?在

谢谢你!~


Tags: inpy程序消息homereturnlinefunction
2条回答

当相关文件作为独立程序运行时,if __name__ == "__main__":的主体将执行。在这种情况下,您可能需要的是exit()或{},它们允许您向调用此脚本的脚本返回有限的信息。通常,您可以用exit(0)表示成功,也可以用非零结果(限制为1-255)来表示一组可能的失败。return用于子例程/函数,exit用于程序。在

因为if statement不是一个方法。在Python中,只能从methods调用return。在

相关问题 更多 >

    热门问题