我想使用另一个列表的值作为分割范围,将一个列表拆分成块。
indices = [3, 5, 9, 13, 18]
my_list = ['a', 'b', 'c', ..., 'x', 'y', 'z']
基本上,将 my_list 从范围中分离:
my_list[:3], mylist[3:5], my_list[5:9], my_list[9:13], my_list[13:18], my_list[18:]
我尝试将数据分成2个一组,但结果不是我需要的。
[indices[i:i + 2] for i in range(0, len(indices), 2)]
我的实际列表长度为1000。
'z'
了。 - CypherXmy_list[ix : iy]
。my_list[ix:]
和my_list[ix: None]
是等价的。因此,你会得到类似这样的东西:[my_list[i: j] for i, j in zip([0] + indices, indices + [None])]
。