首页 > 解决方案 > Python:语法错误:“返回”外部函数

问题描述

我有一个简单的 Python 代码:

import sys

def main(argv1, argv2):
    return 0 

if __name__ == '__main__':
    return main()

基本上我希望代码返回主函数返回的调用者,但在执行过程中出现以下错误:

$ python ../myexamples/sample.py
  File "../myexamples/sample.py", line 11
    return main()
    ^
SyntaxError: 'return' outside function

是不是 main 方法不能将任何值返回给操作系统?

标签: python

解决方案


如果目标是在程序执行结束时将退出代码返回到操作系统,则可以使用exit函数,该return语句只能在函数内部使用,但python程序本身不是函数。所以要回答你的问题,你可以做这样的事情

import sys

def main(argv1, argv2):
    return 0 

if __name__ == '__main__':
    exit_code = main()
    exit(exit_code)


推荐阅读