python中重复坐标的Sum属性

mb5*_*567 5 python list python-3.x

我正在查看我的坐标数据,由于某些预处理,我看到一些具有不同参数的重复坐标.我希望能够合并对应于匹配坐标的属性,并获得简化的结果.澄清我的意思是一个例子:

X = [1.0, 2.0, 3.0, 2.0]
Y = [8.0, 3.0, 4.0, 3.0]
A = [13, 16, 20, 8]
Run Code Online (Sandbox Code Playgroud)

以上数据如下:点(1.0,8.0)的值为13,(2.0,3.0)的值为16.请注意,第二点和第四点具有相同的坐标但属性值不同.我希望能够从坐标列表中删除重复项并对属性求和,以便结果为新列表:

New_X = [1.0, 2.0, 3.0]
New_Y = [8.0, 3.0, 4.0]
New_A = [13, 24, 20]
Run Code Online (Sandbox Code Playgroud)

24是具有相同坐标的第二和第四点的16和8之和,因此保持一个点并将值相加.

我不知道如何做到这一点,我想到使用嵌套的坐标拉链循环,但我不知道如何制定它来总结属性.

任何帮助表示赞赏!

Sam*_*ork 1

你可以将(x,y)坐标放入字典中:

dict = {}
for i in range(len(X)) # len(X) = len(Y)
    if (X[i], Y[i]) not in dict.keys():
        dict[(X[i], Y[i])] = A[i]
    else:
       dict[(X[i], Y[i])] += A[i]
Run Code Online (Sandbox Code Playgroud)