如何在Python中创建列表列表

时间:2012-11-21 17:47:11

标签: python

我有一个开始结束,一步,我想创建一个这样的列表(start = 0,end = 300,step = 100):

[[1, 100], [101, 200], [201, 300]]

开始,结束和步骤会有所不同,所以我必须动态创建列表。

3 个答案:

答案 0 :(得分:4)

>>> start = 0
>>> end = 300
>>> step = 100
>>> [[1 + x, step + x] for x in range(start, end, step)]
[[1, 100], [101, 200], [201, 300]]

答案 1 :(得分:1)

你只需要一个简单的while循环: -

start = 0
end = 300
step = 100

my_list = []

while start < end:   # Loop until you reach the end
    my_list.append([start + 1, start + step]) 
    start += step    # Increment start by step value to consider next group

print my_list

输出: -

[[1, 100], [101, 200], [201, 300]]

range中的xrangelist comprehension函数可以实现同样的目标。

答案 2 :(得分:1)

您可以一起创建两个rangeszip

def do_your_thing(start, end, step):
    return zip(range(start, end - step + 2, step),
               range(start + step - 1, end + 1, step))