[Python]内包表記でリスト(List)を特定の個数ずつに分割するには?

python

どうも、ちょげ(@chogetarou)です。

内包表記を使って、リスト(List)を特定の個数ずつに分割する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

内包表記を使って、リスト(List)を特定の個数ずつに分割するには、range()とスライスを使います。

まず、[]を記述し、[]内でrange()をforループします。

range()の第1引数に0、第2引数にリストの長さ、第3引数に個数を指定します。

そして、ループ処理で、リストをforループの変数から個数分スライスします。

result = [list[i:i+n] for i in range(0, len(list), n)]

上記の[]は、リストをrange()の第3引数の個数ずつで分割したリストを生成します。

使用例

numbers = [1, 2, 3, 4, 5, 6,]

result = [numbers[i:i+2] for i in range(0, len(numbers), 2)]

print(result)
#[[1, 2], 
# [3, 4],
# [5, 6]]

コメント

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