2013-02-21 90 views
2

这给了错误:Python:如何在__name__ == main中插入return?

if __name__=="__main__": 
    box = Myfunc() 
    box.do(1) 
    if box.loop() <> Drh.DrhOk: 
     return 
    else: 
     ... 
     ... 

语法错误:外功能

'回归' 如何退还if __name__=="__main__":块?

+1

错误是自我描述。您正在调用函数外的返回值。 – Nasir 2013-02-21 11:20:05

+0

如果你有一个'else:'块,为什么你需要返回? – 2013-02-21 11:25:07

+3

注意:不推荐使用'<>'代替'!='。使用后者。 – 2013-02-21 11:44:18

回答

14

你不知道。你__main__块应经常阅读:

if __name__ == "__main__": 
    main() 

把你的代码main()函数内确保它是可检验的。

+0

说'允许它是可测试的'会更准确,''确保'意味着你不能写'main()'是无法测试的。 – Duncan 2013-02-21 11:43:52

+0

太好了。感谢你的回答。 – alwbtc 2013-02-21 11:53:52

2

你不想返回,你可能想停止执行。使用sys.exit()