2013-02-21 39 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()