How to Sort a List of Lists by a Specific Index of the Inner Lists?

Patricia Arquette
Release: 2024-11-22 07:34:10
Original
844 people have browsed it

How to Sort a List of Lists by a Specific Index of the Inner Lists?

Sorting Lists of Lists by Inner List Index

Problem:

Given a list of lists, each inner list containing multiple elements, how do we sort the outer list by a specific index of the inner lists?

Example:

Consider the following list of lists:

[[0, 1, 'f'],
[4, 2, 't'],
[9, 4, 'afsd']]
Copy after login

If we want to sort the outer list by the string fields of the inner lists, how would we accomplish this in Python?

Solution:

The solution involves using the operator.itemgetter function. This function allows us to extract a specific element from each inner list and use it as the sorting criterion. Here's how we would use it:

from operator import itemgetter

L = [[0, 1, 'f'], [4, 2, 't'], [9, 4, 'afsd']]
sorted(L, key=itemgetter(2))
Copy after login

Explanation:

  • itemgetter(2) returns a function that extracts the third element from each inner list (index 2, starting from 0).
  • The key parameter in sorted() specifies the sorting criterion. By using itemgetter(2), we instruct the sort function to use the string field as the sorting key.
  • The result is a sorted list of lists, with the order determined by the string fields.

Additional Note:

While itemgetter is an efficient method for sorting by inner list index, for simple cases like this, a lambda function can also be used. However, the lambda function will typically be slower in such cases.

The above is the detailed content of How to Sort a List of Lists by a Specific Index of the Inner Lists?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template