分类:PYTHON
关于多维数组如何复合排序如数组:>>>importnumpyasnp>>>data=np.array([[2,2,5],[2,1,3],[1,2,3],[3,1,4]])>>>>dataarray([[2,2,5],[2,1,3],[1,2,3],[3,1,4]])将数组先按照第一列升序,第二列升序,第三列升序的方式排序:>>>idex=np.lexsort([data[:,2],data[:,1],data[:,0]])>>>sorted_data=data[idex,:]>>>sorted_dataarray([[1,2,3],[2,1,3],[2,2,5],[3,1,4]])然后将数组按照第...
继续阅读 >
废话不多说,直接上代码吧!#-*-coding:cp936-*-importnumpyasnp#一维数组排序arr=[1,3,5,2,4,6]arr=np.array(arr)printarrprintnp.sort(arr)#或printnp.sort(arr,axis=None)print(np.argsort(arr))#正序输出索引,从小到大print(np.argsort(-arr))#逆序输出索引,从大到小输出结果:[135246][123456][031425][524130]#二维数组排序list1=[[4,3,2],[2,1,4]]array=np.array(list1)...
继续阅读 >
python列表元素去重后如何保持原来的顺序不变原列表:list1=[1,2,1,4,9,3,5,2,6,7,3,1,6,8,4,0]去重,使用集合set来去重:list2=list(set(list1)set去重得到的list2默认按升序进行排序:list2=[0,1,2,3,4,5,6,7,8,9]使list2按照list1元素出现的顺序进行排序(也就是原来的顺序):list2.sort(key=list1.index)此时,list2=[1,2,4,9,3,5,6,7,8,0]具体的实现过程如下:补充拓展:python爬取链...
继续阅读 >
2020
09-23
给出列表切片的格式:[开头元素::步长]#输出直到最后一个元素,(最后一个冒号和步长可以省略,下同)[开头元素:结尾元素(不含):步长]#其中,-1表示list最后一个元素首先来看最简单的单一列表:a=[1,2,3,4]a[:]a[::]a[:3]a[1:3:2]a[3]输出依次为:[1,2,3,4][1,2,3,4][1,2,3][2]4注意,这里只有最后一个输出是不带[]的,表明只有最后一个输出是元素,其他在切片中只用了:符号的输出均为list,不论是输出是只有一个元素还是多个元...
继续阅读 >