python string list排序 lambda

https://www.zhetenga.com/view/python%E6%A0%B9%E6%8D%AElist%E7%9A%84%E7%B4%A2%E5%BC%95%E6%8E%92%E5%BA%8Flist%E7%BB%84%E6%88%90%E7%9A%84list%E5%88%97%E8%A1%A8-118062128.html

假如有一个同一系列list列表组成的列表,现在要按里面list的某个索引重新排列这个列表。

比如:zhetenga_list = [['aaa', 30], ['bbb', 20], ['ccc', 25]]

现在需要按照这些列表的第二个数字进行排序。在python中使用sorted函数可以达到要求。

用法:zhetenga_list = sorted(zhetenga_list, key=lambda k: k[1])

将得到结果:[['bbb', 20], ['ccc', 25], ['aaa', 30]]

如果第二个索引的内容是数字字符串,要按数字意思进行排序可以使用:

zhetenga_list = [['aaa', '2'], ['bbb', '1'], ['ccc', '11']]

zhetenga_list = sorted(zhetenga_list, key=lambda k: int(k[1]))

结果:[['bbb', '1'], ['aaa', '2'], ['ccc', '11']]

fileList = []

for i,j in enumerate(f_list):
    
    selectName = f_list[i]
    fileName = path + selectName
    print(fileName)
    
    
    useString = selectName[45:]
    
    useStringSplit = useString.split('E')
    
    useStringFloat = float(useStringSplit[0])
    
    fileList.append(useStringFloat)

fileListNp = np.array(fileList)

idxSort = np.argsort(fileListNp)

#newList = sorted(f_list,key=lambda k:idxSort)
newList = []

for i,j in enumerate(f_list):
    newList.append([j,idxSort[i]])
    
finalList = sorted(newList,key=lambda k:k[1])
原文地址:https://www.cnblogs.com/focus-z/p/14808476.html