#python #for-loop #input #average
Вопрос:
Я новичок в Python.
Я пытаюсь получить ввод от пользователя и использовать его в цикле for. Но это не работает. Я также пытался использовать функцию диапазона, но она также не работала!
Есть ли какой-нибудь другой способ сделать это?
Это и есть Код:
numbers = int(input('10 numbers: '))
sum_of_all_number = 0
result = ''
for each_number in numbers:
sum_of_all_number = each_number
result = sum_of_all_number / 10
print(f'The average is {result}')
выход:
10 numbers: 1234567890
Traceback (most recent call last):
File "C:UsersadminDocumentsPythonschool project duplii.py", line 4, in <module>
for each_number in numbers:
TypeError: 'int' object is not iterable
Комментарии:
1. Не могли бы вы, пожалуйста, указать желаемый результат. Спасибо.
2. Похоже, цель состоит в том, чтобы подвести итог от 0 до 9?
Ответ №1:
Чтобы исправить свой код без изменения логики, сделайте это:
numbers = input('10 numbers: ')
sum_of_all_number = 0
result = ''
for each_number in numbers:
sum_of_all_number = int(each_number)
result = sum_of_all_number / 10
print(f'The average is {result}')
Выход
10 numbers: 1234567890
The average is 4.5
Конечно, результат/среднее значение не должны находиться внутри цикла, поэтому сделайте просто:
numbers = input('10 numbers: ')
sum_of_all_number = 0
for each_number in numbers:
sum_of_all_number = int(each_number)
result = sum_of_all_number / 10
print(f'The average is {result}')
Комментарии:
1. Чем ты очень сильно
Ответ №2:
Используйте это:
numbers = int(input('10 numbers: '))
sum_of_all_number = 0
result = 0
count = 0
for each_number in range(numbers):
sum_of_all_number = each_number
count = 1
result = sum_of_all_number / count
print(f'The average is {result}')
Комментарии:
1. В верхней строке указано
10 numbers
, что должен быть массив (список) из 10 чисел, а не только одно число, которое будет вводиться.
Ответ №3:
Я не знаю, что ты хочешь сделать. Но я думаю, что это то, чего вы хотите достичь.
sum_of_all_number = 0
result = 0
for each_number in range(10):
numbers = int(input("ENter any Number: "))
sum_of_all_number = number
result = sum_of_all_number / 10
print(f'The average is {result}')
Комментарии:
1. Спасибо за ответ , но ввод идет циклами, и если мы нарушим, среднее значение будет неверным! причина — я делаю это, чтобы найти среднее значение любых 10 чисел!