Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我试图在python中使用整数和浮点对列表进行排序;a、 排序([1])”;而且它不起作用_Python_List_Sorting - Fatal编程技术网

我试图在python中使用整数和浮点对列表进行排序;a、 排序([1])”;而且它不起作用

我试图在python中使用整数和浮点对列表进行排序;a、 排序([1])”;而且它不起作用,python,list,sorting,Python,List,Sorting,我试图在python中使用整数和浮点对列表进行排序 “a.sort([1])”(我从列表的第二个元素对其进行排序),但它一直在说“TypeError:必须为key函数使用关键字参数”。我该怎么办?此外,我的列表如下所示: [“bob”、“2”、“6”、“8”、“5.3333”]尝试执行“a.sort()”。它将对您的列表进行排序。 sort无法获取1作为参数。 请在此处阅读更多信息: 如果尝试对除第一个元素之外的每个元素进行排序,请尝试执行以下操作: a[1:] = sorted(a[1:])

我试图在python中使用整数和浮点对列表进行排序 “a.sort([1])”(我从列表的第二个元素对其进行排序),但它一直在说“TypeError:必须为key函数使用关键字参数”。我该怎么办?此外,我的列表如下所示: [“bob”、“2”、“6”、“8”、“5.3333”]

尝试执行“a.sort()”。它将对您的列表进行排序。 sort无法获取1作为参数。 请在此处阅读更多信息:

如果尝试对除第一个元素之外的每个元素进行排序,请尝试执行以下操作:

a[1:] = sorted(a[1:])
很好地解释了如何正确使用
sort

但是,我想指出,对数字字符串进行排序与对数值(整数和浮点等)进行排序不同。按字符串排序将使用字符排序顺序来确定顺序,例如

>>> l = ['100','1','2','99']
>>> sorted(l)
['1', '100', '2', '99']
但这可能不是你想要的;100大于2,因此应显示在列表中比2靠后的位置。您可以按数值排序,但使用
参数将列表项的字符串保留到
排序()

这里的
键是一个lambda函数,它将参数转换为浮点。
sort()
例程将使用转换后的值作为排序键,而不是列表中实际包含的字符串值

要从上的第二个列表项排序,请执行以下操作:

>>> a = ["bob", "2", "6", "8", "5.3333333333333"]
>>> a[1:] = sorted(a[1:], key=lambda x: float(x))
>>> a
['bob', '2', '5.3333333333333', '6', '8']

阅读
列表上的文档。排序
谁是保罗?该链接链接回此问题。@PM2Ring:尝试单击该链接。它链接到这个问题的另一个答案。店主()似乎删除了他的答案,所以也许这就是你问的原因?啊!这就是原因。:)
>>> a = ["bob", "2", "6", "8", "5.3333333333333"]
>>> a[1:] = sorted(a[1:], key=lambda x: float(x))
>>> a
['bob', '2', '5.3333333333333', '6', '8']