目次
2 番目の要素 (整数値) による Python タプルの並べ替え
key 引数の使用
タプル リストの並べ替え
Operator.itemgetter によるソートの最適化
ホームページ バックエンド開発 Python チュートリアル Python タプルを整数の 2 番目の要素で効率的に並べ替える方法

Python タプルを整数の 2 番目の要素で効率的に並べ替える方法

Dec 05, 2024 am 08:44 AM

How to Efficiently Sort Python Tuples by Their Integer Second Element?

2 番目の要素 (整数値) による Python タプルの並べ替え

文字列要素と整数要素の両方を含むタプルのリストを操作する場合、整数値に基づいて効率的に並べ替えることができます。不可欠であること。この記事では、この一般的なプログラミング タスクの解決策を詳しく説明します。

2 番目の項目 (整数) でタプルのリストを並べ替えるには、Python のsorted() 関数を利用できます。この関数では、key キーワード引数を使用して並べ替え基準をカスタマイズできます。

key 引数の使用

key 引数は、タプルの比較方法を決定する関数を入力として受け取ります。この場合、2 番目の要素に基づいてそれらを比較します。次のようにラムダ構文を使用してカスタム関数を定義できます:

lambda x: x[1]
ログイン後にコピー

この関数は単一のタプルを入力として受け取り、その 2 番目の要素を返します。

タプル リストの並べ替え

ここで、sorted() の key 引数を使用して、このカスタム関数をソート関数として指定できます。ルール:

sorted([('abc', 121), ('abc', 231), ('abc', 148), ('abc', 221)], key=lambda x: x[1])
ログイン後にコピー

これは、2 番目の要素によって昇順にソートされたタプルを含む新しいリストを返します:

[('abc', 121), ('abc', 148), ('abc', 221), ('abc', 231)]
ログイン後にコピー

Operator.itemgetter によるソートの最適化

最適なパフォーマンスを得るには、lambda x: x[1] の代わりにoperator.itemgetter(1) を使用することを検討してください。 Operator.itemgetter は、データ構造から指定された要素を抽出するために明示的に設計された組み込み関数であり、効率を向上させることができます。

from operator import itemgetter
sorted([('abc', 121), ('abc', 231), ('abc', 148), ('abc', 221)], key=itemgetter(1))
ログイン後にコピー

このアプローチでは、ラムダ関数を使用した場合と同じ結果が得られますが、わずかに異なる場合があります。場合によってはさらに速くなります。

以上がPython タプルを整数の 2 番目の要素で効率的に並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? Apr 01, 2025 pm 05:09 PM

LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか? 中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか? Apr 02, 2025 am 07:15 AM

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

あるデータフレームの列全体を、Python内の異なる構造を持つ別のデータフレームに効率的にコピーする方法は? あるデータフレームの列全体を、Python内の異なる構造を持つ別のデータフレームに効率的にコピーする方法は? Apr 01, 2025 pm 11:15 PM

PythonのPandasライブラリを使用する場合、異なる構造を持つ2つのデータフレーム間で列全体をコピーする方法は一般的な問題です。 2つのデータがあるとします...

uvicornは、serving_forever()なしでhttpリクエストをどのように継続的に聞いていますか? uvicornは、serving_forever()なしでhttpリクエストをどのように継続的に聞いていますか? Apr 01, 2025 pm 10:51 PM

UvicornはどのようにしてHTTPリクエストを継続的に聞きますか? Uvicornは、ASGIに基づく軽量のWebサーバーです。そのコア機能の1つは、HTTPリクエストを聞いて続行することです...

プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は? プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は? Apr 02, 2025 am 07:18 AM

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

Investing.comの反クローラーメカニズムをバイパスするニュースデータを取得する方法は? Investing.comの反クローラーメカニズムをバイパスするニュースデータを取得する方法は? Apr 02, 2025 am 07:03 AM

Investing.comの反クラウリング戦略を理解する多くの人々は、Investing.com(https://cn.investing.com/news/latest-news)からのニュースデータをクロールしようとします。

See all articles