创建10x10x10坐标网格
#10x10x10
x = np.arange(0,10)
y = np.arange(0,10)
z = np.arange(0,10)
coordinates= []
#makes coordinates for the 10x10x10
for i in range(len(x)):
for j in range(len(y)):
for k in range(len(z)):
coordinates.append((x[i], y[j], z[k]))
所以这是我的代码,其坐标从(0,0,0),(0,0,1)......到(9,9,9)。
我希望能够将每个坐标视为具有信息的对象。例如(0,0,0)有1个苹果,2个橙子,3个柠檬。 (0,0,1)有1个苹果,0个橘子0个柠檬,依此类推。有没有办法存储链接到每个坐标的信息?
答案 0 :(得分:1)
您可以使用坐标创建一个字典,并使每个条目成为包含所需信息的字典:
#10x10x10
x = np.arange(0,10)
y = np.arange(0,10)
z = np.arange(0,10)
coordinates = {}
#makes coordinates for the 10x10x10
for i in range(len(x)):
for j in range(len(y)):
for k in range(len(z)):
obj_in_coord = {
'apples': 4,
'oranges': 2,
'lemons': 6
}
coordinates[(x[i], y[j], z[k])] = obj_in_coord
print coordinates[(2,3,7)]['apples'] # outputs 4
如果你这样离开,当然,每个坐标都会有4个苹果,2个橙子和6个柠檬。您应该在创建obj_in_coord
时应用逻辑。
要使用整数访问信息,只需将obj_in_coord更改为列表:
#10x10x10
x = np.arange(0,10)
y = np.arange(0,10)
z = np.arange(0,10)
coordinates = {}
#makes coordinates for the 10x10x10
for i in range(len(x)):
for j in range(len(y)):
for k in range(len(z)):
info_in_coord = [4, 2, 6]
coordinates[(x[i], y[j], z[k])] = info_in_coord
print coordinates[(2,3,7)][0] # outputs 4
答案 1 :(得分:1)
你可以维持一个dict来获得水果,关键是坐标
fruits = {(0,0,0):{'apples':1, 'oranges':2, 'lemons':3},
}
或
fruits = {(0,0,0):[1, 2, 3],
}