while循环python zip sum

时间:2016-01-18 17:41:24

标签: javascript jquery python python-3.x

我是.NET开发人员。我在将python代码转换为javascript方面遇到了困难。我也阅读了文档,但仍然无法理解。

以下是我想要转换为Javascript的代码行。

while sum([a - b for a, b in zip(rad0, rad1)]) != 0:

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:2)

sum([a - b for a, b in zip(rad0, rad1)]) != 0:

ziprad0的每个元素与rad1配对。如果迭代的长度不同,则结果将被截断为较短迭代的长度。

括号中的内容是列表理解。它迭代zip创建的每一对,将它们分配给ab,执行a - b,并将结果收集到列表中。

sum总计了结果列表。 != 0检查总和不等于零。

如果迭代rad0rad1的长度相同,则python可以简化为

while sum(rad0) - sum(rad1) != 0:

这是因为每个元素的差异总和与所有元素之和的差异相同。而且由于我们只想在差值不为零时进行迭代,我们也只想在总和不相等时进行迭代:

while sum(rad0) != sum(rad1):