マッピング
Coddyの「Python リスト内包表記」コースのレッスン 2/9。
数値のリストが与えられ、すべての数値の3乗を保持するリストを計算したいとしましょう。
nums = [1, 4, 6, 12, 3]
cubes = []
for n in nums:
cubes.append(n ** 3)
print(cubes) # [1 , 16, 36, 144, 9]リスト内包表記を使用すると、これを1行で行うことができます。
nums = [1, 4, 6, 12, 3]
cubes = [n ** 3 for n in nums]
print(cubes) # [1 , 16, 36, 144, 9]このような操作はマッピングと呼ばれます。これは、既存のリストの各要素に関数を適用し、その結果を含む新しいリストを生成することです。
構文は以下の通りです。
lst = [expression for item in iterable]lst は、リスト内包表記の操作によって生成された新しいリストを保持します。
チャレンジ
簡単数値のリスト nums が与えられます。各要素を x と仮定し、次の式で各要素を計算した新しいリストを作成してください:<strong>x<sup>3</sup>+2*x<sup>2</sup>+5</strong>
新しいリストを new_nums という名前の変数に格納してください。
自分で試してみよう
nums = eval(input()) # この行は変更しないでください