我需要根据每个列表中的第一个元素对嵌套列表进行排序...
因此,我有以下几点:
input = [['ABCMeter', 'six', 'page','car=frog'],['ABCarrow','mall','cop''xmlVal'],['ABCcomp','eleven','computer'],['ABCliz','one']]我需要对它们进行排序,以便:
output = [['ABCarrow','mall','cop''xmlVal'], ['ABCcomp','eleven','computer'], ['ABCliz','one'], ['ABCMeter', 'six', 'page','car=frog']]我尝试了以下方法,但没有成功(以及其他几种排序方法):
split_into_lists = input.sort(key=lambda x: x[0])发布于 2019-07-04 01:29:42
您只是使用了错误的函数;sort方法就地修改列表并返回None。改用sorted返回一个新列表。
split_into_lists = sorted(input, key=lambda x: x[0])发布于 2019-07-04 01:33:46
此外,预期的输出与字符串对象的排序标准不匹配。
例如:ABCMeter < ABCarrow
它逐个字符进行比较,如果它们相等,则比较下一个字符。由于M小于a (参见ASCII表),因此ABCMeter < ABCarrow
发布于 2019-07-04 15:15:49
split_into_lists = sorted(input, key=lambda x: x[0].casefold())https://stackoverflow.com/questions/56875302
复制相似问题