排序呢
a
事先分成两对元组
(index, element)
,并将其与第二个列表进行比较:
from operator import itemgetter
a = [3, 1, 2, 3, 0, 0, 0, 0, 0, 0, 0]
b = [2, 2, 3, 3, 0, 0, 0, 0, 0, 0, 0]
sorted_a = sorted(enumerate(a), key=itemgetter(1), reverse=True)
# [(0, 3), (3, 3), (2, 2), (1, 1), (4, 0), (5, 0), (6, 0), (7, 0), (8, 0), (9, 0), (10, 0)]
a_master = []
b_master = []
for i, x in sorted_a:
if x > b[i]:
a_master.append(i)
elif x < b[i]:
b_master.append(i)
print(a_master)
print(b_master)
其输出:
[0]
[2, 1]