Python - 以数字方式排序列表

时间:2014-03-17 15:48:06

标签: python list python-3.x

我有一个这种形式的文件名列表:

L='csv (2).zip', 'csv (5).zip', 'csv (1).zip', etc...

以数字方式订购此数据的最简单方法是什么?所以我有:

csv (1).zip, csv (2).zip, csv (5).zip, ...

2 个答案:

答案 0 :(得分:3)

您可以在括号内获取数字,例如x.index("(") + 1 : x.rindex(")")。因此,我们将其应用于每个元素并将其转换为数字

my_list = ['csv (2).zip', 'csv (5).zip', 'csv (1).zip']
print(sorted(my_list, key = lambda x: int(x[x.index("(") + 1 : x.rindex(")")])))
# ['csv (1).zip', 'csv (2).zip', 'csv (5).zip']

答案 1 :(得分:0)

你如何使用它来在python中对数组进行排序,例如,如果我想打印此代码中的最高和最低标记。

/*
SELECT SUM(COUNT_TABLES) FROM (

SELECT COUNT(1) AS COUNT_TABLES FROM TABLE3 (NOLOCK)  
UNION ALL
SELECT COUNT(1) AS COUNT_TABLES FROM TABLE4 (NOLOCK)  
UNION ALL
SELECT COUNT(1) AS COUNT_TABLES FROM TABLE5 (NOLOCK)  

)A
*/