Python程序查找列表中所有对的绝对差之和


在本文中,我们将学习解决给定问题陈述的解决方案和方法。

问题陈述

给定一个列表输入,我们需要找到列表中所有对的绝对差之和。

enumerate() 方法为可迭代对象添加一个计数器,并以枚举对象类型的形式返回它。

在此方法中,我们有一个包含绝对差的列表“diffs”。

我们使用两个循环,初始化两个变量。一个用于迭代计数器,另一个用于列表元素。在每次迭代中,我们检查元素是否相同。

如果不是,则找到绝对差并将其追加到diffs列表。

最后,我们找到列表的总和。由于每对将被计算两次,因此我们将最终总和除以2以获得所需的值并返回它。

示例

 实时演示

def sumPairs(lst):
   diffs = []
   for i, x in enumerate(lst):
      for j, y in enumerate(lst):
         if i != j:
            diffs.append(abs(x-y))
   return int(sum(diffs)/2)
# Driver program
lst = [22,3,55,43]
print(sumPairs(lst))

输出

177

所有变量和函数都在全局作用域中声明,如下所示。

结论

在本文中,我们学习了查找列表中所有对的绝对差的方法

更新于: 2019年9月26日

278 次浏览

开启你的 职业生涯

完成课程获得认证

开始学习
广告