在Python中创建列表[[1,2,3],[4,5,6]]的最佳方法



我想生成列表[[1,2,3],[4,5,6]]的列表

我附加了一些python代码,但我不知道在效率方面应该选择什么:

[[y + x for x in range(3)] for y in [1,4]]
[[y for y in range(z, z + 3)] for z in [1,4]]
[[y, y + 1, y + 2] for y in [1,4]]

它们都生成所需的列表,但是我对它们的编写方式感到不满意(因为它们都依赖于从列表[1,4]中获取值),并且考虑到我只是Python语言的初学者。你能给我推荐一个生成所需列表的好方法吗?谢谢你

[[y + x for x in range(3)] for y in [1,4]]

在这段代码中,给出值4并不是最好的方法,因为要打印像这样的列表

[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18], [19, 20, 21], [22, 23, 24], [25, 26, 27], [28, 29, 30]]

你可能需要写

[[y + x for x in range(3)] for y in [1,4,7,10,13,16,19,22,25,28]]

不是一个简单和通用的代码。你可以写

[[ x for x in range(y,y+3)] for y in range(1,6,3)]

[[ x for x in range(y,y+3)] for y in range(1,n,3)]

最新更新