急,我需要一个代码,生成一个像这样的列表
[[0,0],[0,1],[1,0],[1,1]]
[[x,y],[x,y],[x,y],[x,y]]
这个列表可以看做一个多维数组的二维展开,刚才的示例是一个2*2的二维数组展开的
[0,1][1,1]
[0,0][1,0]
一个大列表,里面包着的是小列表,每个小列表里面都是坐标。我需要给出几乘几和维度,他就给我输出一个列表。
例如:
输入:F(2,2) #意思就是 2*2的二维数组
输出:[[0,0],[0,1],[1,0],[1,1]]
急,我需要一个代码,生成一个像这样的列表
[[0,0],[0,1],[1,0],[1,1]]
[[x,y],[x,y],[x,y],[x,y]]
这个列表可以看做一个多维数组的二维展开,刚才的示例是一个2*2的二维数组展开的
[0,1][1,1]
[0,0][1,0]
一个大列表,里面包着的是小列表,每个小列表里面都是坐标。我需要给出几乘几和维度,他就给我输出一个列表。
例如:
输入:F(2,2) #意思就是 2*2的二维数组
输出:[[0,0],[0,1],[1,0],[1,1]]
可以使用 Python 的嵌套列表推导 (nested list comprehension) 来生成这样的列表。
你可以定义一个函数,接收两个参数,一个是行数 m,另一个是列数 n,然后返回一个嵌套列表推导。
def F(m, n):
return [[(i, j) for j in range(n)] for i in range(m)]
print(F(2, 2))
输出:
[[(0, 0), (0, 1)], [(1, 0), (1, 1)]]
如果你要返回元组嵌套列表,
def F(m, n):
return [[(i, j) for j in range(n)] for i in range(m)]
print(F(2, 2))
输出
[[(0, 0), (0, 1)], [(1, 0), (1, 1)]]
如果你需要坐标是[x,y]的形式的列表,
def F(m, n):
return [[[i, j] for j in range(n)] for i in range(m)]
print(F(2, 2))
输出
[[[0, 0], [0, 1]], [[1, 0], [1, 1]]]
如果你需要一维的铺平的坐标列表,
def F(m, n):
return [[i, j] for i in range(m) for j in range(n)]
print(F(2, 2))
输出
[[0, 0], [0, 1], [1, 0], [1, 1]]