Форматирование результатов для отображения двух десятичных знаков - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь отформатировать следующую программу так, чтобы результаты для «среднего» отображались только с двумя десятичными разрядами.Я понимаю, что для этого используется код '%.2f' %, но я не могу понять, как интегрировать его в последнюю строку кода, выдающего ошибку.

Вот программа, и я работаюна.

#the user has to enter three numbers for the program to average

#request the first number
answer1 = input('Please enter the first number: ')
answer1 = int(answer1)

#request the second number
answer2 = input('Please enter the second number: ')
answer2 = int(answer2)

#request the third number
answer3 = input('Please enter the third number: ')
answer3 = int(answer3)

final = answer1 + answer2 + answer3
final = int(final)

#print the average
print('The average of these numbers is ', final / 3)

Это последняя строка, где я не могу понять, куда вставить '%.2f' %, чтобы вернуть результаты для 2 десятичных знаков.

Любая помощь будет оченьоценили.

Ответы [ 2 ]

0 голосов
/ 20 сентября 2018

Вам необходимо привести переменную final в float.Например, final как целое число может привести к 10 / 3 = 3, но как число с плавающей запятой 10.0 / 3 = 3.333333.Затем вы можете использовать функцию round() для округления числа с плавающей запятой до определенного количества десятичных знаков.Пример:

a = 10.0
final = round(a/3, 2)
final is now 3.33 
0 голосов
/ 20 сентября 2018
print('The average of these numbers is %0.2f' %final / 3)
...