Pythonでタプルのリスト内の各タプルを反転する方法
タプルのリスト内の各タプルを反転させたい場合、負のステップスライシング([::-1])を使うと簡単に実現できます。
Pythonのリストは、整数や浮動小数点数、文字列など、さまざまなデータ型の値(異種の値)をまとめて格納できる便利なデータ構造です。「タプルのリスト」とは、リストの中に複数のタプルが含まれている形式のことを指します。
負のスライシングでは、通常の正のインデックスではなく、負の数を使って要素にアクセスします。ステップに「-1」を指定することで、要素を末尾から先頭へと逆順に取り出すことができます。
以下に具体的な実装例を示します。
サンプルコード
def reverse_tuple(my_tuple):
return [tup[::-1] for tup in my_tuple]
my_list = [(21, 22), (43, 74, 45), (76, 17, 98, 19)]
print("The list of tuples is ")
print(my_list)
print(reverse_tuple(my_list))実行結果
The list of tuples is [(21, 22), (43, 74, 45), (76, 17, 98, 19)] [(22, 21), (45, 74, 43), (19, 98, 17, 76)]
コードの解説
- まず、「reverse_tuple」という関数を定義し、引数としてタプルのリストを受け取ります。
- リスト内包表記を使って各タプルを順番に処理し、「::」演算子と負のインデックス([::-1])によって、各タプルの要素を逆順に並べ替えた新しいタプルを生成します。
- 反転前のタプルのリストを定義し、コンソールに出力して確認できるようにしています。
- その後、定義済みの関数「reverse_tuple」にこのリストを渡して呼び出します。
- 各タプルが反転された結果がコンソールに表示されます。
このように、スライス記法「[::-1]」を活用すれば、ループ処理を複雑に書くことなく、簡潔で読みやすいコードでタプルの反転を実現できます。
-
なぜPythonはリスト内のリストではなく「リスト内のタプル」を返すのか?その理由を解説
Pythonでデータベースを操作したり、ライブラリからデータを取得したりすると、「リストの中にタプルが入った構造」が返ってくることがよくあります。「なぜ普通のリストではなく、わざわざタプルなのか?」と疑問に思ったことはありませんか?この記事では、その理由を分かりやすく解説します。 1. 返却されたデータは「変更しない」ことが前提だから 最大の理由は、Pythonが返却するデータはミュータブル(変更可能)にしないことを期待している点にあります。タプルはイミュータブル(不変)なデータ型であり、一度作成すると内容を書き換えることができません。 関数やライブラリがデータを返すとき、それはあくまで「読
-
Pythonタプル(tuple)入門:作成・操作・削除の基本をコード例で解説
Pythonにおけるタプル(tuple)は、順序付け(ordered)かつ変更不可(immutable)という特徴を持つコレクションです。変更不可であるため、一度作成したタプルに要素を追加したり削除したりすることはできません。 タプルは丸括弧 () と、最低1つのカンマ , を使って作成します。 また、タプルはリストと同じようにインデックス指定やスライシングが可能ですが、スライスの結果もタプルとして返される点に注意しましょう。 タプルの作り方 colorsTuple = (red, green, blue) print(colorsTuple) 実行結果: (red, green, blue