我正在尝试创建一个可以获取任意数量的输入并找到中位数的函数。我觉得我这一切都错了,我无法实现这一功能 我需要做什么?
代码:
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
答案 0 :(得分: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)
您的方法失败,因为您尝试使用数字作为变量名称,这是无效的。
答案 1 :(得分:2)
您无法将值分配给1,2或3.此外,您需要将字符串从input
转换为int
s。尝试一些简单的更改。
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)