【Python】リストからN個取り出して一覧化

IT

記事で紹介していること

  • PythonでリストからN個取り出した組み合わせ(Conbination)の一覧を出す方法と使い方
    • ライブラリitertoolsを使用する

サンプルコード

実装は簡単。ライブラリitertoolscombinationsを呼び出すだけ

実装例はA~Eのリストから3つ取り出す組み合わせを求めている

import itertools

# リストの準備
list_char = ["A", "B", "C", "D", "E"]

# 取り出す数の設定
N = 3
# N個取り出してリストに格納
pick_list = list(itertools.combinations(list_char,N))
# 組み合わせの一覧表示
print(pick_list)

実行結果

[('A', 'B', 'C'), ('A', 'B', 'D'), ('A', 'B', 'E'), ('A', 'C', 'D'), ('A', 'C', 'E'), ('A', 'D', 'E'), ('B', 'C', 'D'), ('B', 'C', 'E'), ('B', 'D', 'E'), ('C', 'D', 'E')]

itertools.combinationsの使い方

  • 使い方
    • import itertoolsでインポート
    • itertools.combinations(【リスト】, 【取り出す数】)で呼び出し
list(itertools.combinations(【リスト】, 【取り出す数】))

僕はリストに格納したかったので、

【変数】= list(itertools.combinations(【リスト】, 【取り出す数】))

で変数にリストを格納した

コメント

タイトルとURLをコピーしました