Sorting a List of Lists by a Specific Inner List Element
To sort a list of lists based on a specific index within each inner list, Python provides several approaches. One commonly used method involves utilizing the operator module's itemgetter() function.
Solution Using itemgetter():
The itemgetter() function from the operator module allows you to selectively extract a specific element from a list or tuple. By passing the itemgetter() function as an argument to the sorted() function, you can sort the outer list according to the desired inner element:
from operator import itemgetter L = [[0, 1, 'f'], [4, 2, 't'], [9, 4, 'afsd']] sorted(L, key=itemgetter(2))
This code snippet will sort the list L based on the string elements at the second index of each inner list. The resulting sorted list will be:
[[9, 4, 'afsd'], [0, 1, 'f'], [4, 2, 't']]
Alternative Solution Using a Lambda Function:
Alternatively, you can utilize a lambda function to achieve the same sorting behavior:
sorted(L, key=lambda x: x[2])
However, in this simple case, using a lambda function is slightly slower compared to itemgetter().
The above is the detailed content of How to Sort a List of Lists by a Specific Inner List Element in Python?. For more information, please follow other related articles on the PHP Chinese website!