基本的には、リスト内のアイテムをグループ化したいと思います。たとえば:[1, 2, 3, 4, 5, 6]
についてはPythonでリスト内包を持つネストされたリストを作成する
- は、私が
[1, 2, 3, 4, 5, 6, 7]
について[[1, 2, 3], [4, 5, 6]]
- をしたい、私は
[[1, 2, 3], [4, 5, 6], [7]]
をしたい私は、ネストされたリストをネスト解除する方法を知っているが、私は、ネストされたリストを作成する方法は考えています。
基本的には、リスト内のアイテムをグループ化したいと思います。たとえば:[1, 2, 3, 4, 5, 6]
についてはPythonでリスト内包を持つネストされたリストを作成する
[1, 2, 3, 4, 5, 6, 7]
について[[1, 2, 3], [4, 5, 6]]
[[1, 2, 3], [4, 5, 6], [7]]
をしたい私は、ネストされたリストをネスト解除する方法を知っているが、私は、ネストされたリストを作成する方法は考えています。
あなたは3
のrange
および出力スライスして、リストの内包表記を使用することができます。
>>> l = [1, 2, 3, 4, 5, 6, 7]
>>> [l[i:i+3] for i in range(0, len(l), 3)]
[[1, 2, 3], [4, 5, 6], [7]]
>>> l = [1, 2, 3, 4, 5, 6]
>>> [l[i:i+3] for i in range(0, len(l), 3)]
[[1, 2, 3], [4, 5, 6]]
範囲は、第二の端部であり、ステップ第三で、最初のものは範囲の開始である3つの引数を取ります。 Python 2を使用している場合は、代わりにxrange
を使用してください。
私はあなたがこのような方法でそれを行うことができると思います。
target = [1, 2, 3, 4, 5, 6, 7]
n = 3
print([target[i:i+n] for i in range(0, len(target), n)])
Nを変更することにより、サブリストのサイズを変更することができます。しかし、上記のコードでは、私はターゲットを2回使用して、私は目標を一度使用する方法を見つけることを願っています。