0

我正在尝试创建一个可以获取任意数量的输入并找到中位数的函数。我觉得我做错了,我无法获得这个功能。
我需要做什么?

  1. 我列了我的清单
  2. 我要求用户输入
  3. 我用 numpy 排序
  4. 我打印了中位数

代码:

import numpy

numbers = [1,2,3]                
1 = input("Please type your first number")            
2 = input("please type your second number")       
3 = input("please type your third number")       
median = numpy.median(numbers)            
print(median) 

我要完成的工作:

您想找到哪些数字的中位数?1,2,3,4,5,6,7
中位数为:4

4

2 回答 2

4

您应该将数字存储在列表中,并使用循环向其中添加数字。

import numpy

size = int(input("Enter number of numbers you would like to enter"))
numbers = []
for i in range(size):
    numbers.append(int(input("Please type in number %d" % i)))

median = numpy.median(numbers)  

print(median) 

您的方法失败,因为您尝试使用数字作为变量名,这是无效的。

于 2013-08-08T16:26:32.527 回答
2

您不能将值分配给 1、2 或 3。此外,您需要将字符串从s 转换inputints。尝试一些简单的改变。

import numpy                
input1 = input("Please type your first number")            
input2 = input("Please type your second number")       
input3 = input("Please type your third number")
numbers = map(int, [input1, input2, input3])
median = numpy.median(numbers)            
print(median) 
于 2013-08-08T16:27:03.250 回答