找到列表的总和/平均值,找出列表中重复的数字的时间

时间:2015-06-23 17:59:06

标签: python list integer sum mean

我正在使用python而且我无法找到如何让python在他输入一个整数作为输入时提醒用户。也出于某种原因,我无法找到列表的总和,更不用说平均值了。 这是我到目前为止所尝试的。我希望用户能够输入10个整数。

value = raw_input ("Enter a number: ")
numbers = [(x) for x in value.split()]
numbers.append (raw_input("Enter a number: "))
numbers.append (raw_input("Enter a number: "))
numbers.append (raw_input("Enter a number: "))
numbers.append (raw_input("Enter a number: "))
numbers.append (raw_input("Enter a number: "))
numbers.append (raw_input("Enter a number: "))
numbers.append (raw_input("Enter a number: "))
numbers.append (raw_input("Enter a number: "))
numbers.append (raw_input("Enter a number: "))

print sum(numbers)/len(numbers)

这允许用户制作一个列表,当我打印列表时,它很好

Enter a number: 1
Enter a number: 2
Enter a number: 3
Enter a number: 4
Enter a number: 5
Enter a number: 6
Enter a number: 7
Enter a number: 8
Enter a number: 9
Enter a number: 8
>>> print numbers
['1', '2', '3', '4', '5', '6', '7', '8', '9', '8']

现在,当我使用此代码查找总和甚至均值时。

print sum(numbers)/len(numbers)

用户输入10个号后,就会出现

Traceback (most recent call last):
  File "C:/Python27/need help.py", line 13, in <module>
    print sum(numbers)/ len (numbers)
TypeError: unsupported operand type(s) for +: 'int' and 'str'

还有一种方法可以在用户输入重复的号码时提醒用户吗?

我真的需要帮助。

1 个答案:

答案 0 :(得分:0)

您尚未将输入转换为整数。它们仍然是字符串。

用它来转换它们 -

numbers = [int(i) for i in numbers]