Reputation: 35
I'm a beginner to Python.
I'm trying to take an input from the user and use it in a for loop. But it doesn't work. I also tried to use range function but it also did't work!
Is there any other way to do it?
This is the Code:
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}')
output:
10 numbers: 1234567890
Traceback (most recent call last):
File "C:\Users\admin\Documents\Python\school project duplii.py", line 4, in <module>
for each_number in numbers:
TypeError: 'int' object is not iterable
Upvotes: 0
Views: 744
Reputation: 3115
To fix your code without changing the logic behind do this:
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}')
Output
10 numbers: 1234567890
The average is 4.5
Of course the result/average must not be inside the loop, so do simply:
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}')
Upvotes: 1
Reputation: 74
I don't know what you want to do. But I think this is what you want to accomplish.
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}')
Upvotes: 0
Reputation: 4875
Use this:
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}')
Upvotes: 0