Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 高度なパッキングおよびアンパッキングパターン | Pythonにおけるパッキングとアンパッキング
Pythonにおける関数型プログラミングの概念

book高度なパッキングおよびアンパッキングパターン

メニューを表示するにはスワイプしてください

Pythonの拡張アンパッキングでは、*演算子を使用してシーケンスから複数の要素を1つの変数にまとめて格納することができます。このテクニックは、最初と最後の要素を特定の変数に割り当て、間の残りの要素をまとめて取得したい場合に特に便利です。

Note
注意

*演算子は、他の変数に割り当てられていない残りの要素をPythonがまとめて収集することを指示します。

123456
numbers = [1, 2, 3, 4, 5] first_val, *middle_vals, last_val = numbers print("first_val:", first_val) print("*middle_vals:", middle_vals) print("last_val:", last_val)
copy

この場合、*middle_vals は最初と最後の要素の間にあるすべての要素を取得するため、middle_vals[2, 3, 4] となります。

次の代入では:

a, *b, c = [1, 2, 3, 4, 5]

  • 変数 a は最初の値を受け取ります。
  • c は最後の値を受け取ります。
  • b はその間のすべての値をまとめて受け取ります。

この方法により、シーケンスの長さが不明または可変の場合でも、コードがより柔軟かつ表現力豊かになります。拡張アンパッキングはリストに限定されず、タプルや文字列など、あらゆるイテラブルで機能します。これらのパターンを習得することで、データ構造の変化にも容易に対応できる、よりクリーンで読みやすいコードを書くことができます。

question mark

*c の代入において、a, b, *c = [1, 2, 3, 4, 5] 変数は何を取得しますか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 1.  5

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 1.  5
some-alt