Я получаю сообщение об ошибке при преобразовании пользовательского ввода в целое число. Что такое ПРАВИЛЬНЫЙ ПУТЬ? - PullRequest
1 голос
/ 13 апреля 2020

---- -Так вот мой код -----

print("Type 3 numbers (comma separated)")
x,y,z = int(input()).split(",")
Avg = (x + y + z)/3
print(f"So here is the average {Avg}")

Речь идет о том, чтобы попросить пользователя ввести 3 числа, и он вычисляет среднее из них, но возникает недопустимая буквальная ошибка позже я просто поместил int () в переменную Avg следующим образом

Avg = int((x+y+z))/3
it works but i want to know why my code didn't worked earlier?

1 Ответ

2 голосов
/ 13 апреля 2020

Проблема в том, что вы пытаетесь преобразовать строку, которую нельзя преобразовать в int (с запятыми, возвращаемыми input()). Попробуйте это, его можно использовать для вычисления c среднего для любого количества выбранных вами номеров:

print("Type numbers (comma separated)")
nums = [int(n) for n in input().split(",")]
Avg = sum(nums)/len(nums)
print(f"So here is the average {Avg}")
...