Skip to main content
 首页 » 编程设计

python之按 x、y 和多个 z 存储点

2025年05月04日15telwanggs

我会写一个例子,这样你就可以理解我了:

例如,我有这 3 个点:(0, 1, 244) - (0, 1, 255) - (1, 2, 133)

实际上,当 2 个点具有相同的 (x, y) 时,我需要对 Z 进行平均。我的想法是将它们存储在具有双索引/键的东西(数组,字典?)中,其中值是 Z 的数组。

所以我基本上想要这个:[0, 1, [244, 255]] 和 [1, 2, [133]]

我的问题是我不知道用什么最简单的方式来存储它们...

提前致谢!

请您参考如下方法:

使用字典:

points = [(0, 1, 244), (0, 1, 255), (1, 2, 133)] 
d = {} 
for point in points: 
    key = point[:2] 
    if key in d.keys(): 
        (d[key]).append(point[2]) 
    else: 
        d[key] = [point[2]] 
print(d) 

对于平均值:

import numpy as np 
for k in d.values(): 
    print(np.mean(k))