问一下关于python list的问题 请问如何比较两个LIST里数的大小?

我想做一个function 比较两个list里数的大小 def Histogram(A,B) A = [2,3,5,7,42] B = [3,8,45] 这里小于等于3的在listA里有2个 大于等于3小于8的数有3个 大于等于8小于45的数有1个 最后的output listC = [2,3,1] 请问应该如何入手? 完全没有头绪...
原题:Histogram( [a1, ..., an], [b1, b2, ..., bk] ) returns a new list [c1, c2, ..., ck+1], where c1 is the number (count) of values in sample that are smaller than or equal to b1, ck+1 is the number of values in sample that are greater than bk, ci (for 1 < i < k) is the number of values in sample that are greater than bi and smaller than or equal to bi+1. That means that the list of values binBoundaries defines a set of bins; you can assume that the list binBoundaries for the is sorted in ascending order. The function Histogram counts (and returns) how many samples fall into each bin.
For your example
>>> t = [2, 3, 4, 5, 6, 25, 31]
>>> bins = [3, 5, 10, 30]
the output should be: [2, 2, 1, 1, 1]
2 numbers (2 and 3) are smaller than or equal to 3
2 numbers (4 and 5) are greater than 3 and smaller than or equal to 5
1 number (6) is greater than 5 and smaller than or equal to 10
1 number (25) is greater than 10 and smaller than or equal to 30
1 number (31) is greater than 30

为什么b[0]可以小于等于而其他都是小于,还有A,B是否都是升序的?

以下是最一般的处理:

c=[]
prev=0
for i in B:
c.append(0)
for j in A:
if j>=prev and i>j:
c[-1]+=1
prev=i追问

不好意思啊 说错题了 b[0]是小于等于其他都是大于和小于等于的 是升序的 要求用.sort 的命令

温馨提示:内容为网友见解,仅供参考
无其他回答

python中如何比较两个数组中对应位置的元素的大小
举个例子,先做减法再判断和0的大小 a = np.array([[1,12,51,1],[1,2,3,4]])b = np.array([[12,1,1,15],[5,4,3,2]])c = a-b c>0 结果c=array([[False, True, True, False],[False, False, False, True]])...

list长度的问题
2. 获取List的长度:要获取List的长度,我们可以使用Python内置的`len`函数。这个函数会返回List中元素的数量。例如,对于上述的`my_list`,`len`会返回4,因为该List包含四个元素。3. len函数的工作原理:`len`函数通过遍历List中的每一个元素来计算其长度。在Python中,无论是字符串、List、元组还...

python如何查询两list中第一列一样的元素?
if i in element_1:print(i)第三个问题:查询两lits中第一个list中第一列存在而第二个list中第一列不存在的(思路与第二问类似,用if not in判断即可,只是这里需要两个list相互判断)for i in element_1:if i not in element_2:print(i)for j in element_2:if j not in element_1:p...

关于python list append的问题
1、可变,不可变变量。列表是可变变量 2、变量的引用,先看数值 然后在看列表 所以会有这样的结果,1列表是可变变量,2,a,b都引用的同一个地址

java 比较两个list数组问题
我这有种解法:1、将list1和list2进行合并,在合并过程中去重。2、用Collections.sort()进行排序就行了。代码如下:List<Integer> list = new ArrayList<Integer>();for (Integer i : list2) { if (list.indexOf(i) == -1) { list.add(i);} } for (Integer i : list1) { if (...

请教一个CAD关于list命令的问题
这个单位是预设的,如果用units设定的mm,则590也是mm 如设定的是英寸则590就是英寸.如你用units改变单位,但是图型比例没有缩放,此数字是不会改变的.(可用直线标注标上比对一下)

python数组最大多少?
python中list的大小最大是多少一般应用场景都不用考虑这个大小,因为这个上限很高,需要用到这么多元素的list的时候,都需要考虑很多其它问题。1,32位python的限制是536870912个元素。2,64位python的限制是1152921504606846975个元素。【Python】1,Python(英语发音:\/?pa?θ?n\/),是一种面向对象、解释型...

求问Python 中,list 和list[:]的区别。如下面两个小程序,为什么执行结果...
第一个,li在运行时发生了变化,无法继续迭代了。最好不要这样来修改循环体。第二个li[:]实际上可以看作一个函数,返回了li的全部元素,换句话说,li是不等于li[:]的,li[:]是li的一个复制,所以修改li并不会对已经生成的li[:]产生影响,所有以ab开头的字符串在li[:]中的都会被检查到。

我用python编程,关于list.reverse()的问题。
因为python中list和dict都是所谓的“传址”,也就是list2=list1,只是把list1的地址赋值给list2,这时候他们指向同一个内存地址,也就是同一个数据[1,2,3,4],这之后你调用list1.reverse(), 修改了内存里的数据,所以list2也就变了。如果解决了您的问题请采纳!如果未解决请继续追问 ...

c# List简单问题,两个List可以直接写等号吗?
可以。不过其中任何一个List的值发生变化(包含新增、修改、删除),则另外一个List也会发生变化。如果其中一个赋值之后,List的值不变,则需要用属性或方法赋值

相似回答