当前位置: 首页 > 知识库问答 >
问题:

我需要做一个程序,取一个数字列表的中位数,然后找到中间数字[重复]

许庆
2023-03-14

我有一个问题,我需要包括的事情之一是中位数的下标,但我不知道这意味着什么

我试过很多方法,但我还是不知道中位数的下标是什么意思。

def median(a):
    a=a.sort()
    a=len(a)/2
    return a

def main():
    print(median([3,1,2]))
    print(median([4,3,2,1]))
    print(median([1,5,3,2,4]))
    print(median([6,5,1,2,3,4]))

main()

我希望它打印出数字的中间值,如果它得到2,我需要较小的...我们不能用平均值。

共有1个答案

燕成双
2023-03-14

您返回的是中间的索引,而不是该索引处元素的值。

此外,< code>a.sort()就地修改列表,它不返回排序后的列表;< code>a = a.sort()对列表排序,然后将< code>a设置为< code>None。

def median(a):
    s = sorted(a)
    middle = int(len(s)/2)
    return s[middle]

 类似资料:
  • 问题内容: 我有一个。如果用户第二次输入相同的数字,我想向用户显示。为此,我需要找到它。 我希望我能说清楚。 问题答案: 如果要检查是否在中存储了某些值,则可以使用该方法,如果对象在列表中,则将返回该方法,否则。

  • 我在下一件事上遇到了麻烦:我有一个arraylist中有数字,我想反转列表中的数字,比如,如果它有1 2 3,将arraylist中的值替换为3 2 1。为此,我创建了一个名为reordenar()的方法;它将第一个arraylist中的最后一个数字放在第二个arraylist中的第一个位置。完成后,我不知道如何让第一个arraylist用第二个arraylist替换它的数字。这是我写的代码。 那

  • 题目描述 数字以 0123456789101112131415... 的格式序列化到一个字符串中,求这个字符串的第 index 位。 解题思路 // java public int getDigitAtIndex(int index) { if (index < 0) return -1; int place = 1; // 1 表示个位,2 表示 十位...

  • 我试图用java编写一个循环,它取一个3位数,并将这些数字相加在一起。例如,123等于6。我知道n%10会得到第一个数字3,然后n/10会得到23,然后可以再次是%10,得到第二个数字。然而,这对最后一个数字不起作用。我不知道怎么写循环。任何帮助都将不胜感激。

  • 问题内容: 将PHP字符串四舍五入到小数点后两位的正确方法是什么? 输出应该是; 函数定义应该如何? 问题答案: 您可以使用number_format(): 例: 该函数返回一个 字符串 。

  • 我想从两个数字创建一个序列,这样其中一个数字的出现次数减少(从减少到1),而另一个数字的出现次数固定在。 我一直在四处寻找并尝试使用seq和rep来做这件事,但我似乎不明白。 下面是和,的一个例子: 这里是和,: