首页 > 解决方案 > 一次遍历 2 个列表 Neo4j

问题描述

我有两个相同长度的数字列表。我想同时浏览两个列表,将这对数字相乘并将它们添加到累加器中。在python中我会这样做:

a = [1,2,3]
b = [4,5,6]
acc = 0

for x,y in zip(a,b):
    acc = acc + x*y

我在 Neo4j 中查看foreachlist comprehension构建但无法使其工作......我该怎么办?

标签: listforeachneo4jlist-comprehension

解决方案


这是一个使用 reduce 和基于列表大小的范围迭代器的示例:

WITH [1,2,3] AS list1, [4,5,6] AS list2
RETURN reduce(
   acc=0, 
   x IN range(0, size(list1)-1) | 
   acc + (list1[x] + list2[x])
) AS total

推荐阅读