我有一份清单,清单如下:
list=[[0,1,2,3],[4,5,6,7],[8,9,10,11],[12,13,14,15]]
。在
我想在一个函数中使用这个列表,该函数将我的list
分成9
组,每组四个值,这些值被转储到lists
的dict
中。如果len(list)=n
,函数应该创建[sqrt(n)-1]*[sqrt(n)-1]
片。在本例中,给定len(list)=16
,slices=[4-1]*[4-1]=9
。在
这是函数:
def dictionarize1(array):
dict1 = {}
count = 0
for x in range(len(array[0]) - 1) :
for y in range(len(array[0]) - 1):
dict1[count] = [array[x][y], array[x][y+1], array[x+1][y], array[x + 1][y+1]]
count = count + 1
return dict1
dictionarize1(list) #Calling the function
我认为我的list
是一个2D数组,在本例中是4x4
矩阵,必须像矩阵一样遍历它:row
是固定的,column
是递增的:
因此,我的切片必须是[0,1,4,5]
,[1,2,5,6]
,[2,3,6,7]
,[4,5,8,9]
等,而不将矩阵包装起来。
最终结果应该是dict={'0':[0,1,4,5],'1':[1,2,5,6],'2':[2,3,6,7],'3':[4,5,8,9],'4':[5,6,9,10],'5':[6,7,10,11],'6':[8,9,12,13],'7':[9,10,13,14],'8':[10,11,14,15]}
。在
我的问题:这是我的for
循环按列遍历列表的正确方法吗(这意味着:行是固定的,列是递增的)?我无法判断是否我打印了我的list
我只得到一个常规列表,因此它使我困惑。谢谢!在
我不知道我是否明白你想要什么。如果要显示正确的结果,请执行此操作
相关问题 更多 >
编程相关推荐