首页 > 解决方案 > Python:如何在打印函数中打印元组的单个元素

问题描述

我的代码:

def askTestScores():
   test1 = int(input("Enter test 1 score: "))
   test2 = int(input("Enter test 2 score: "))
   test3 = int(input("Enter test 3 score: "))
   test4 = int(input("Enter test 4 score: "))
   test5 = int(input("Enter test 5 score: "))

   testScores = (test1,test2,test3,test4,test5)

   return testScores



def determine_grade(testScores):
   for i in range(testScores):

      if i >= 90 and i <= 100:
         return "A"
      elif i >= 80 and i <= 89:
         return "B"
      elif i >= 70 and i <= 79:
         return "C"
      elif i >= 60 and i <= 69:
         return "D"
      else:
         return "F"



 def displayGrades(testScores): 

   print("Score\t\t Grade")
   print("-----------------------")
   print(f"{testScores[0]}\t\t {determine_grade(testScores[0])}")
   print(f"{testScores[1]}\t\t {determine_grade(testScores[1])}")
   print(f"{testScores[2]}\t\t {determine_grade(testScores[2])}")
   print(f"{testScores[3]}\t\t {determine_grade(testScores[3])}")
   print(f"{testScores[4]}\t\t {determine_grade(testScores[4])}")

x = askTestScore
displayGrades(x)

当我在循环中使用 range 函数来确定_grade 函数时,这只会打印“F”。我想要的是,单独打印每个等级,但是当我删除范围函数时,我收到类型错误:说 int object not iterable。我该如何解决这个问题?

标签: pythonfunction

解决方案


而不是 range() 使用:

for i in testscores :

推荐阅读