首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >需要帮助对数组进行数字排序

需要帮助对数组进行数字排序
EN

Stack Overflow用户
提问于 2015-04-21 05:43:57
回答 2查看 58关注 0票数 0

我已经得到了一个格式编号、名称的数组,并且我试图使用sort()函数将它从最高的数字排序到最低的。

我目前正在数组上使用sort(),然后反转结果,但是它似乎没有正确地排序。

下面是我使用的值:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
['850.766666667', 'Chris'], ['332.466666667', 'Callum'], ['655.793939394', 'James'], ['84.9444444443', 'John']

这就是我得到的结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[('850.766666667', 'Chris'), ('84.9444444443', 'John'), ('655.793939394', 'James'), ('332.466666667', 'Callum')]

正如您可能看到的,('84.9444444443', 'John')应该在末尾,但是它是排序之后的第二个值。

我做错了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-21 05:52:40

几乎正确@Zaaferani

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
l = ['850.766666667', 'Chris'], ['332.466666667', 'Callum'], ['655.793939394', 'James'], ['84.9444444443', 'John']
sorted(l, key=lambda k: float(k[0]), reverse=True)

如果不存储排序函数的输出

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
l=sorted(l, key=lambda k: float(k[0]), reverse=True)
票数 3
EN

Stack Overflow用户

发布于 2015-04-21 05:47:53

使用此代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
l = ['850.766666667', 'Chris'], ['332.466666667', 'Callum'], ['655.793939394', 'James'], ['84.9444444443', 'John']
sorted(l, key=lambda k: float(k[0]), reverse=True)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29773988

复制
相关文章
使用asort函数对PHP数组进行升序排序
PHP是一门功能强大的语言,数组是PHP中十分常用的数据结构之一。在实际开发中,经常需要对数组进行排序。PHP提供了多个函数用于对数组进行排序,其中asort函数可以实现对数组进行升序排序。
很酷的站长
2023/08/25
4660
使用asort函数对PHP数组进行升序排序
使用 Python 对波形中的数组进行排序
假设我们采用了一个未排序的输入数组。我们现在将对波形中的输入数组进行排序。数组 'arr[0..n-1]' 以波形排序,如果 arr[0] >= arr[1] <= arr[2] >= arr[3] <= arr[4] >= .....
很酷的站长
2023/02/22
6.9K0
使用 Python 对波形中的数组进行排序
python中选择排序法对数组进行升序排序_sort函数对字符串数组排序
先说一下三者的区别 sort, sorted 是用在 list 数据类型中的排序方法 argsort 是用在 numpy 数据类型中的排序方法( numpy 里也有一个 sort 方法,下面会讲)
全栈程序员站长
2022/09/22
3K0
python对字典进行排序
标准的python字典是无序的。即使对(键、值)对进行了排序,也无法以保留排序的方式将它们存储在dict中。
IT工作者
2022/07/07
1.9K0
Delphi对TStrings进行排序
最近在做一个Delphi的对接第三方支付的接口,接口签名机制模仿微信的签名方式,把参数按ascii码进行排序后再加上key进行md5的加密,因为调用接口的的Post里面的参数是TStrings类型的,但是在TStrings类型里面没有Sorted排序这个方法。所以我自己重写了一个函数用于处理这个。
Vaccae
2019/07/25
1.4K0
对map集合进行排序
今天做统计时需要对X轴的地区按照地区代码(areaCode)进行排序,由于在构建XMLData使用的map来进行数据统计的,所以在统计过程中就需要对map进行排序。
java思维导图
2018/11/30
1.7K0
对map集合进行排序
LUA对Map进行排序
Lua中最常见的数据结构就是Table, 用Table表示Map很容易, 但早期Lua没有提供一个针对Map数据结构的排序方法,下面用Moonscript实现了一个Map型数据结构排序函数方法。
糖果
2019/11/20
3.4K0
C++ 对vector进行排序
title: C++ vector排序 tags: c++,vector,排序 grammar_cjkRuby: true --- 每次都要重复造轮子真的很累,所以用别人的吧。 目的:对vector进行排序 示例: 记得将 algorithm 这个头文件包括进去 #include <iostream> #include <vector> #include <algorithm> using namespace std; int main(void) { vector <int> a
marsggbo
2018/01/23
8.5K0
js对数字数组排序[通俗易懂]
js中经常需要用到对数组进行排序的操作,当数组中的元素均为数字时,直接使用sort()进行排序得到的结果可能不是你想要的结果。
全栈程序员站长
2022/08/28
3.4K0
PHP对数组进行排序操作
昨天别人问了我一个问题,瞬间把我给问懵了。事情是这样的,问我给到一个既定数组,现在让我实现下将数组元素从低到高升序排列。第一个反应是直接使用ksort之类排序函数操作(一时脑子浆糊,这系列函数每次都要翻手册,实际上是asort)。告诉我,不能使用内置函数,需要自己写一个。好吧,这么大的坑,有简单的不用,要来个复杂的。当时写了个简单实现的方案,没多想,晚上闲着没事就想了下效率问题。最近对程序运行效率始终保持敏感。就想测试下各方法效率到底相差多少。
世纪访客
2018/08/02
9240
PHP对数组进行排序操作
使用QCollat​​or对QStringList进行排序
  QCollator类根据排序规则算法比较字符串。以下例子是对QStringList进行数字优先且区分大小写比较排序。
Qt君
2023/03/17
2.9K0
使用QCollat​​or对QStringList进行排序
Python中对list进行排序
很多时候,我们需要对List进行排序,Python提供了两个方法 对给定的List L进行排序, 方法1.用List的成员函数sort进行排序 方法2.用built-in函数sorted进行排序(从2.4开始) 这两种方法使用起来差不多,以第一种为例进行讲解: 从Python2.4开始,sort方法有了三个可选的参数,Python Library Reference里是这样描述的 cmp:cmp specifies a custom comparison function of two arguments (iterable elements) which should return a negative, zero or positive number depending on whether the first argument is considered smaller than, equal to, or larger than the second argument: "cmp=lambda x,y: cmp(x.lower(), y.lower())" key:key specifies a function of one argument that is used to extract a comparison key from each list element: "key=str.lower" reverse:reverse is a boolean value. If set to True, then the list elements are sorted as if each comparison were reversed.In general, the key and reverse conversion processes are much faster than specifying an equivalent cmp function. This is because cmp is called multiple times for each list element while key and reverse touch each element only once. 以下是sort的具体实例。 实例1: >>>L = [2,3,1,4] >>>L.sort() >>>L >>>[1,2,3,4] 实例2: >>>L = [2,3,1,4] >>>L.sort(reverse=True) >>>L >>>[4,3,2,1] 实例3: >>>L = [('b',2),('a',1),('c',3),('d',4)] >>>L.sort(cmp=lambda x,y:cmp(x[1],y[1])) >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)] 实例4: >>>L = [('b',2),('a',1),('c',3),('d',4)] >>>L.sort(key=lambda x:x[1]) >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)] 实例5: >>>L = [('b',2),('a',1),('c',3),('d',4)] >>>import operator >>>L.sort(key=operator.itemgetter(1)) >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)] 实例6:(DSU方法:Decorate-Sort-Undercorate) >>>L = [('b',2),('a',1),('c',3),('d',4)] >>>A = [(x[1],i,x) for i,x in enumerate(L)] #i can confirm the stable sort >>>A.sort() >>>L = [s[2] for s in A] >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)] 以上给出了6中对List排序的方法,其中实例3.4.5.6能起到对以List item中的某一项 为比较关键字进行排序. 效率比较: cmp < DSU < key 通过实验比较,方法3比方法6要慢,方法6比方法4要慢,方法4和方法5基本相当 多关键字比较排序: 实例7: >>>L = [('d',2),('a',4),('b',3),('c',2)] >>> L.sort(key=lambda x:x[1]) >>> L >>>[('d', 2), ('c', 2), ('b', 3), ('a', 4)] 我们看到,此时排序过的L是仅仅按照第二个关键字来排的,如果我们想用
py3study
2020/01/09
2.4K0
sort函数对vector排序_sort函数对结构体数组排序
今天写代码的是遇到想对vector进行排序的问题,隐约记得std::sort函数是可以对vector进行排序的,但是这次需要排序的vector中压的是自己定义的结构体(元素大于等于2),想以其中某一个元素进行正序或逆序排序,则不能直接使用sort函数。
全栈程序员站长
2022/09/21
1.7K0
在排序数组中查找数字
思路: 2分查找数组中的第一个k: 1. 如果中间数字大于k,那么k只可能出现在前半段 2. 如果中间数字小于k,那么k只可能出现在后半段 3. 如果中间数字等于k: - 如果中间数字的前面不是k,那么中间数字恰好就是第一个k - 如果中间数字的前面是k,那么第一个k肯定在前半段
用户8639654
2021/07/23
3.7K0
「  c语言使用起泡法对输入的10个数字进行排序  」
#include "stdio.h" main() { int a[10],min; printf("请输入10位数字:"); for (int i = 0; i <= 9; i++) { scanf("%d",&a[i]); } for (int j = 0; j < 9; j++) { for (int i = 0; i < 9-j ; i++) { if(a[i]<a[i+1]){ mi
青益
2023/01/03
1.7K0
在 JavaScript 中对数组进行排序
排序是您在学习JavaScript时将使用的众多基本方法之一。让我们回顾一下如何对不同的数据类型使用排序方法。
腾龙
2022/06/02
4.9K0
linux对文本内容数字进行排序
首先,创建一个文件,里面每一行输入数字 默认的排序方式是按照ASCII码进行升序 [root@localhost ~]# sort slow.txt > number.txt [root@localhost ~]# vi number.txt 我们可以添加 -n 让它按照数字的大小进行升序 [root@localhost ~]# sort -n slow.txt > number.txt [root@localhost ~]# vi number.txt 我们可以添加 -n -r
互联网-小阿宇
2022/11/21
1.5K0
linux对文本内容数字进行排序
linux对文本内容数字进行排序
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/101908.html原文链接:https://javaforall.cn
全栈程序员站长
2022/06/29
1.5K0
linux对文本内容数字进行排序
点击加载更多

相似问题

需要帮助对多个数组进行排序

20

需要帮助对Python中的数字进行排序(升序)

30

需要帮助对perl中的数组进行排序

121

需要帮助对数组进行排序

32

需要帮助对数组进行排序。

40
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文