2014-11-04 58 views
-5

快速問題我想知道我要去哪裏錯了我目前正在學習Python,我卡住了我在這個簡單的成績計算器函數使用標記作爲參數錯了。如果在函數語句Python

這是我的代碼,我想知道你們是否可以指出我在正確的方向。謝謝:)

def calculateGrade(mark): 
    if mark >=16: 
     return("A") 
    elif mark >= 12 and mark <16: 
     return("B") 
    elif mark >8 and mark <11: 
     return("C") 
    elif mark <8: 
     return("F") 
+5

有什麼問題? – MattDMo 2014-11-04 20:35:32

+3

「標記」絕對是一個數字,而不是一個字符串? (另外,你不處理'mark == 8'或'11 <= mark <12'。) – jonrsharpe 2014-11-04 20:36:13

+1

請說明你的輸入和你的期望輸出應該是什麼 – resilva87 2014-11-04 20:37:42

回答

1

我會做的第一件事是確保「標記」是一個整數。然後我將擺脫已經檢查過的值的冗餘檢查。然後我會擺脫多餘的括號(謝謝,Matthias)。

def calculateGrade(mark): 
    mark = int(mark) 
    if mark >=16: 
     return "A" 
    elif mark >= 12: 
     return "B" 
    elif mark >8: 
     return "C" 
    else: 
     return "F" 
+2

然後我們擺脫不必要的parens。你不需要'return(「F」)',你可以使用'return'F''。 – Matthias 2014-11-04 20:42:45

+0

這真是太好了謝謝我有很多學習要開始。感謝他們 – Noskes 2014-11-04 20:45:17

+0

@NoskesL:如果答案對您有幫助,請儘快將其標記爲已接受。 – GingerPlusPlus 2014-11-04 20:47:56