【问题标题】:find the sum/mean of a list and find out when duplicated numbers are in a list [duplicate]查找列表的总和/平均值,并找出重复的数字何时在列表中[重复]
【发布时间】:2015-09-09 16:25:23
【问题描述】:

我正在使用 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'

还有什么方法可以在用户输入重复号码时提醒他们?

我真的需要帮助。

【问题讨论】:

标签: python list integer sum mean


【解决方案1】:

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

使用它来转换它们 -

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

【讨论】:

  • 谢谢,我已经做到了,但只有第一个数字是整数,其余的仍然是字符串。它看起来像这样 [1, '2', '3', '4', '5', '6', '7', '8', '9', '8']
  • 我认为它在我的系统上工作正常。请再检查一遍好吗?在所有输入都被输入之后写这个语句,就在print sum(numbers)/len(numbers)之前
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-03-18
  • 2021-09-01
  • 1970-01-01
  • 2013-10-09
  • 2017-03-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多