2015-10-24 66 views
0

我寫了這個程序,但我在理解如何使用return聲明時遇到了一些問題。當我運行這個程序時,它不打印出結果。誰能幫助解決這個問題嗎?我不想用printreturn statement(考試分數))學校作業

def main(): 
    score=["A*","A","B","C","FAIL"] 
    q=input("what is ur score?") 
    q=int(q) 
    if q<40: 
     return score[4] 
    if 41<=q<=50: 
     return score[3] 
    if 51<=q<=51: 
     return score[2] 
    if 61<=q<=80: 
     return score[1] 
    if 81<=q<=100: 
     return score[0] 


main() 
+1

貌似返回

result = main(); print result; 

//打印值你可以調用'main',但是你不會對它的返回值做任何事情。它不只是自動打印。嘗試'print main()'。順便說一句,這些都是非常慷慨的成績。 ;) – lurker

回答

0

如果您希望在stdout中輸出一些內容,那麼上面的程序缺少一個打印語句。你可以嘗試以下嗎?

def main(): 
    score=["A*","A","B","C","FAIL"] 
    q=input("what is ur score?") 
    q=int(q) 
    if q<40: 
     return score[4] 
    if 41<=q<=50: 
     return score[3] 
    if 51<=q<=51: 
     return score[2] 
    if 61<=q<=80: 
     return score[1] 
    if 81<=q<=100: 
     return score[0] 

if __name__ == '__main__': 
    print main() 
0

您必須打印結果而不返回結果。如果要從正在調用的函數返回結果,則使用return語句。

def top(): 
    return 5 

top = top() 
print(top) 
5 // woul 

ð被打印出來到控制檯

得到結果印刷關聯具有可變的功能,即由函數