前提・実現したいこと
以下のソースコードで行っていることを一般化したい.
発生している問題・エラーメッセージ
以下のソースコードで出力される(5^3, 3)の配列を(5^n, n)の配列にしたいのですが,それを作る方法がわかりません.
該当のソースコード
python
1import numpy as np 2b = [1, 2, 3, 4, 5] 3a = [] 4cala = [[]] * 3 5cala1 = [] 6cala2 = [] 7cala3 = [] 8for j in range(len(b)): 9 for k in range(len(b)): 10 for l in range(len(b)): 11 cala1.append(b[j]) 12 cala2.append(b[k]) 13 cala3.append(b[l]) 14a = (cala1, cala2, cala3) 15choko = np.transpose(a)
試したこと
再帰関数を用いて,以下のようにやりました.objを初期化してしまってうまくいかないのはわかりますが,どう直したらいいのかよくわからないです...
import numpy as np def re(n, a): obj = [] if n <= 0: return a else: coo = [] for i in range(len(a)): coo.append(a[i]) obj.extend(coo) return re(n-1, obj) n = 3 a = [1, 2, 3, 4, 5] p = re(n, a,) p = np.transpose(p)
補足情報(FW/ツールのバージョンなど)
Pythonのバージョンは3.6.4です.
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/08/14 04:55
2018/08/14 06:13