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

Pythonでリストから「数値とその3乗」を含むタプルのリストを作成する方法

この記事では、指定された問題文に対する解決策とそのアプローチについて詳しく解説します。

問題文

リストが入力として与えられたとき、各要素の数値とその3乗(キューブ)をペアにしたタプルのリストを作成する必要があります。

解決アプローチ

この問題は、Pythonのリスト内包表記を使うことで、簡潔かつ効率的に解くことができます。以下に、インライン実装による具体的な解法を示します。

コード例

list1 = [0,1,2,4,6]
res = [(val, pow(val, 3)) for val in list1]
# main
print(res)

出力結果

[(0, 0), (1, 1), (2, 8), (4, 64), (6, 216)]

上記のコードでは、リストlist1の各要素valに対して、タプル(val, pow(val, 3))を順番に生成しています。pow(val, 3)はべき乗演算子を使ったval ** 3という書き方に置き換えることも可能です。リスト内包表記を活用することで、複数行にわたるforループを書く必要がなく、たった1行で処理を完結できる点が大きなメリットです。

下の図は、リストの宣言から、それがネストされたタプルの系列へと変換される流れを視覚的に示したものです。

Pythonでリストから「数値とその3乗」を含むタプルのリストを作成する方法

まとめ

この記事では、与えられたリストから、各タプルに数値とその3乗を格納したタプルのリストを作成する方法について学びました。リスト内包表記をマスターすれば、シンプルで読みやすく保守性の高いコードで、この種のデータ変換を簡単に実現できます。

  1. Pythonのリストとタプルの違いとは?特徴と使い分けのポイントを解説

    リストとタプルはどちらもシーケンス型 リスト(list)とタプル(tuple)は、どちらもPythonにおける「シーケンス型」に分類されるデータ型です。両者ともカンマで区切られた複数の要素を持ち、数値や文字列など異なる型のオブジェクトを混在させて格納することができます。 最大の違いは「可変か不変か」 リストとタプルの最も重要な違いは、リストが可変(mutable)であるのに対し、タプルは不変(immutable)であるという点です。 不変(イミュータブル)なオブジェクトは、一度メモリ上に作成されると内容を変更できません。そのため、タプルに対しては要素の追加・変更・削除が一切行えません。一方、

  2. Pythonのリストとタプルの違いとは?特徴と使い分けのポイントを解説

    Pythonでは複数の値をまとめて扱えるシーケンス型として、リスト(list)とタプル(tuple)がよく使われます。どちらも似たような役割を持っていますが、決定的な違いがあります。それはタプルが「不変(immutable)」であるという点です。 最大の違い:タプルは変更できない タプルは一度作成すると、その中の値を後から変更することができません。一方、リストは「可変(mutable)」なので、作成後でも要素の追加・削除・変更が自由に行えます。 # リスト:変更可能 my_list = [1, 2, 3] my_list[0] = 10 # 正常に変更できる # タプル:変更不可 my_