【发布时间】:2014-01-13 00:31:18
【问题描述】:
我需要遍历多个列表,并对匹配的记录做一些计算:
for (a,b,c,d) in list1:
for (a2,b2,e) in list2:
if (a==a2) and (b==b2):
mylist.add(a,b,c,d,e,d*e)
是否有一种有效的方法来进行上述计算。非常感谢。
【问题讨论】:
-
给我们举个例子看看列表是什么样子的?
-
首先,在外循环中` If a != b: continue`
-
@ColBeseder:我猜意图是
if (a==a2) and (b==b2),但我同意 OP 应该澄清一下。 -
列表可能看起来像 list1 = (name, last_name, gender, job_class, Salary) list2 = (name, last_name, increase) 并假设还有一个列表 list3 = (job_class, bonus) 所以需要找到所有匹配的记录,这样
-
您似乎使用了错误的数据结构来完成这项工作。请展示一些实际代码和一些实际数据。