ポケモンの組み合わせ
ポケモントレーナーの Ash は、5匹のポケモンのグループに出会いました。これらのポケモンは、あなたのセッション内のリスト(pokemon)に読み込まれており、確認のためにコンソールにも表示されています。
Ash はこの中から何匹か捕まえたいのですが、彼のポケデックスには一度に2匹までしか保存できません。itertools モジュールの combinations を使って、Ash が捕まえられる可能なポケモンのペアを確認してみましょう。
この演習はコースの一部です
効率的なPythonコードの書き方
演習の手順
itertoolsからcombinationsをインポートします。pokemonリストから取り出せる、すべてのポケモンのペア(2匹で1組)を含む combinations オブジェクトcombos_objを作成します。combos_objをアンパックして、combos_2というリストにします。- Ash はポケデックスをアップグレードして、今は4匹のポケモンを保存できるようになりました。
combinationsを使って、異なる4匹のすべての組み合わせを収集し、アスタリスク(*)を使って直接リストcombos_4に保存してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import combinations from itertools
____ ____ ____ ____
# Create a combination object with pairs of Pokémon
combos_obj = ____(____, ____)
print(type(combos_obj), '\n')
# Convert combos_obj to a list by unpacking
combos_2 = ____
print(combos_2, '\n')
# Collect all possible combinations of 4 Pokémon directly into a list
combos_4 = ____
print(combos_4)