numpyを使う場合
もしnumpyを使える環境である場合は、 numpy.array_split
を使うのが楽だと思います。
https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.array_split.html
python
1import numpy as np
2
3N = 4
4l = ['あめ','あいす','ちょこ','くっきー','どーなつ','りんご','ばなな']
5
6groups = np.array_split(l, N)
7
8for group in groups:
9 print(group)
numpyを使わない場合
以下のように書くと、順番を保ったままグループ分けをすることができます。
python
1N = 4
2l = ['あめ','あいす','ちょこ','くっきー','どーなつ','りんご','ばなな']
3
4max_size = len(l) // N + 1
5
6for i in range(N):
7 print(l[i * max_size:(i + 1) * max_size])
その他
順番をランダムにしたい
もし順番をバラバラにしたい場合は、以下のような処理を挟むといいと思います。
python
1import random
2random.shuffle(l)
リストの名前について
本質問とは関係ありませんが、
python
1list = ['あめ','あいす','ちょこ','くっきー','どーなつ','りんご','ばなな']
と書いてしまうと、Pythonの組み込み型 list
を上書きしてしまうため、変数名には list
は使わないようにしたほうが適切です。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。