###前提・実現したいこと
直積を求めたいと思っており、itertools.product
を使用しようと思っていますが、
itertools.product
の使い方について分からない点がありご教授願えませんでしょうか。
dat = [["6","0","9"], ["6","0","9"], ["2","5"]] result = list(itertools.product(dat[0],dat[1],dat[2]))
上記の例の場合、引数にリストを3つ指定していますが、
こちらを入れ子になった元のdatを指定して記述する方法はどうすれば良いでしょうか・・・。
また、上記例の場合はdat内のリストの要素数は3ですが、
こちらのdatのリストの要素数もその都度可変で動的に変化する場合を想定しております。
###該当のソースコード
import itertools from pprint import pprint dat = [["6","0","9"], ["6","0","9"], ["2","5"]] result = list(itertools.product(dat[0],dat[1],dat[2])) pprint(result) >>> [('0', '0', '2'), ('0', '0', '5'), ('0', '6', '2'), ('0', '6', '5'), ('0', '9', '2'), ('0', '9', '5'), ('6', '0', '2'), ('6', '0', '5'), ('6', '6', '2'), ('6', '6', '5'), ('6', '9', '2'), ('6', '9', '5'), ('9', '0', '2'), ('9', '0', '5'), ('9', '6', '2'), ('9', '6', '5'), ('9', '9', '2'), ('9', '9', '5')]
###試したこと
リスト内包記法やlambda式,map関数を用いてどうにか表現しようとしましたが
実現できませんでした...。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/04 10:31