Python
 Computer >> コンピューター >  >> プログラミング >> Python

【Python入門】リストの要素を降順に並べ替える方法をわかりやすく解説

Pythonでは、リスト(配列)の要素を降順に並べ替えたい場合、sort()メソッドを使い、引数reverseTrueを指定するだけで簡単に実現できます。

サンプルコード

my_list = [44, 56, 42, 31, 11, 23, 78, 89, 9, 0]
print("元のリスト:")
print(my_list)
my_list.sort(reverse = True)
print("降順にソートした後のリスト:")
print(my_list)

実行結果

元のリスト:
[44, 56, 42, 31, 11, 23, 78, 89, 9, 0]
降順にソートした後のリスト:
[89, 78, 56, 44, 42, 31, 23, 11, 9, 0]

コードの解説

  • まず、整数の要素を持つリストを定義し、その内容をコンソールに表示します。

  • 次に、リストに対してsort()メソッドを呼び出します。

  • このとき、引数reverseTrueを指定することで、降順(大きい値から小さい値へ)の並べ替えが有効になります。

  • sort()メソッドは元のリスト自体を直接書き換える「インプレース操作」である点に注意してください。

  • 最後に、並べ替えられた結果をコンソールに出力します。


補足:元のリストを変更せずにソートしたい場合

元のリストをそのまま保持しておきたい場合は、組み込み関数のsorted()を使うのがおすすめです。sorted()は新しいリストを返すため、元のデータは変更されません。

new_list = sorted(my_list, reverse = True)
print(new_list)  # [89, 78, 56, 44, 42, 31, 23, 11, 9, 0]

状況に応じてsort()sorted()を使い分けることで、より安全で読みやすいコードを書くことができます。

  1. Pythonでサブリストの2番目の要素に基づいてリストをソートする方法

    リストが与えられたとき、そのサブリストの2番目の要素に基づいてリスト全体をソートするのが本記事の課題です。ここでは、最も基本的なソートアルゴリズムであるバブルソートを使って実装していきます。 実行例 入力 [[CCC, 15], [AAA, 10], [RRRR, 2],[XXXX, 150]] 出力 [[RRRR, 2], [AAA, 10], [CCC, 15], [XXXX, 150]] アルゴリズムの手順 ステップ1: リストを受け取る。 ステップ2: ネストされたループを使って、サブリストの2番目の要素にアクセスする。 ステップ3: 配列のすべての要素を走査する。 ステップ4:

  2. 要素の長さに基づいてリストをソートするPythonプログラム

    この記事では、ユーザーが入力したリストを、各要素の長さ(文字数)に基づいてソートする方法を解説します。Pythonには標準で用意されている組み込み関数 sorted() を使うことで、シンプルなコードで実現できます。 例 入力::[mona,pp,aaa] それぞれの長さは [4,2,3] したがって、ソート後の並び順は [2,3,4] 出力::[pp,aaa,mona] アルゴリズム ステップ1: リストの要素を入力する。 ステップ2: sorted(A, key=len) 関数を適用する。 サンプルコード # リストをソートする def sortedlist(A): ne