2013-12-04 6 views
0

Так это код:Невозможно напечатать строку, продолжать получать не отзывной ошибку

def variousScores(students): 
    best = 0 
    worst = 100 
    average = 0 
    count = 0 
    for s in students: 
     if s.examScore > best: 
      best = s.examScore 
     if s.examScore < worst: 
      worst = s.examScore 
     average = s.examScore + average 
     count = count + 1 
    average = average/count 
    return best, worst, average 

def printScores(best, worst, average, stndrdDev): 
    print("\n\nWorst score:  {:4.2f}.format"(worst)) 

я получаю TypeError: 'str' object is not callable на линии print("\n\nWorst score: {:4.2f}.format"(worst)) Я только начал работать с классами, и я чувствую, что это что меня пугает. Любые предложения?

ответ

4

Ваш текущий код пытается вызвать строку "\n\nWorst score: {:4.2f}.format" как функцию, так как после нее вы разместили (worst).

Последняя строка должна быть записана следующим образом:

print("\n\nWorst score:  {:4.2f}".format(worst)) 

Обратите внимание, что .format часть находится на вне строки формата. Это связано с тем, что str.format является строковым методом.

Смежные вопросы