2015-12-06 27 views
-6

我試圖運行該代碼,但是它要求我輸入的兩個times.I只想功能「等級」被調用和返回值的函數根據用戶輸入。但是當我執行這個代碼時,它會要求用戶輸入兩次。這Python代碼調用返回一個值,但用戶輸入兩次詢問

def grades(score): 

try: 
     score = float(input("enter the score please")) 
except: 
     score = -1 
if score<0.0 or score>1.0: 
     return "Wrong score" 
elif score==0.9: 
     return "A" 
elif score==0.8: 
     return "B" 
elif score==0.7: 
     return "C" 
elif score==0.6: 
     return "D" 
elif score==0.5: 
     return "B" 
else : 
     return "F" 

MyScore=float(input("enter my score")) 
result=grades(MyScore) 
print(result) 

我想調用函數「等級」,但用戶輸入只能被詢問一次。

+0

你正在使用兩次輸入!刪除線將myScore = ...而使用等級不帶參數 – 1844144

+2

刪除嘗試 - 除了部分來自'grades' –

回答

3

在你問的得分功能等級:

score = float(input("enter the score please")) 

,然後在函數外,你也這樣做:

MyScore=float(input("enter my score")) 

卸下兩個輸入之一聲明,它只會問你一次:)

def grades(score): 

if score<0.0 or score>1.0: 
     return "Wrong score" 
elif score==0.9: 
     return "A" 
elif score==0.8: 
     return "B" 
elif score==0.7: 
     return "C" 
elif score==0.6: 
     return "D" 
elif score==0.5: 
     return "B" 
else : 
     return "F" 


try: 
     score = float(input("enter the score please")) 
except: 
     score = -1 

result=grades(score) 
print(result)' 
+0

我試過,但還是同樣的問題。我想編寫一個程序來提示0.0到1.0之間的分數。如果 得分超出範圍,打印錯誤消息。如果得分在0.0和1.0之間,則 使用下表打印等級: 如果得分> = 0.9,則等級= A, 如果得分> = 0.8則等級= B, 如果得分> = 0.7則等級= C, 如果得分> = 0.6然後等級= d, 如果得分<0.6然後等級= F, 我想通過使用函數 稱爲分級採用一個分數作爲其參數來完成這個,並返回一個等級 作爲一個字符串。 可以請你幫我寫這個代碼? – Rohail

+0

@Rohail檢查原來的答案 - 我有一個解決方案 –

+0

@ J.默裏更新它太謝謝你了 – Rohail

相關問題