我的问题:这是代码,我想在41行输出13个字典之后,把这些字典放到一个列表里。但是输出的列表是13个最后一个字典。
delta_neighbor_dict = dict()
delta_neighbor = list()
for index in range(data1.shape[1]):
for k in range(data1.shape[0]):
delta_neighbor_list = list()
for v in range(data1.shape[0]):
#欧氏距离计算样本间距离
dis = np.sqrt(np.sum(np.square(data1[k] - data1[v])))
if dis <= neighbor_list[index]:
delta_neighbor_list.append(v)
delta_neighbor_dict.update({k: delta_neighbor_list})
print(delta_neighbor_dict)
delta_neighbor.append(delta_neighbor_dict)
print(delta_neighbor)
(1)41行输出的13个字典:
(2)42行我想把这13个字典添加到一个列表中
(3)但是输出的结果中:
[{ 0: [0, 20, 56], 1: [1], 2: [2], 3: [3], 4: [4], 5: [5, 18, 49, 53], 6: [6, 29], 7: [7], 8: [8], 9: [9, 29, 42, 47, 54, 56], 10: [10, 31], 11: [11, 12, 27], 12: [11, 12, 26, 27, 51, 57], 13: [13], 14: [14], 15: [15, 53, 57], 16: [16, 17, 48, 53], 17: [16, 17, 53], 18: [5, 18], 19: [19], 20: [0, 20, 40, 56], 21: [21], 22: [22, 23, 24, 29, 35], 23: [22, 23, 24, 35], 24: [22, 23, 24, 35], 25: [25], 26: [12, 26, 57], 27: [11, 12, 27, 37, 38], 28: [28], 29: [6, 9, 22, 29, 35], 30: [30], 31: [10, 31], 32: [32], 33: [33], 34: [34, 36, 37], 35: [22, 23, 24, 29, 35, 44], 36: [34, 36, 37], 37: [27, 34, 36, 37, 38], 38: [27, 37, 38], 39: [39], 40: [20, 40, 44, 56], 41: [41], 42: [9, 42, 47], 43: [43], 44: [35, 40, 44, 47], 45: [45], 46: [46], 47: [9, 42, 44, 47, 54, 56], 48: [16, 48], 49: [5, 49], 50: [50], 51: [12, 51], 52: [52], 53: [5, 15, 16, 17, 53, 57], 54: [9, 47, 54, 56], 55: [55],