如何在下面简化对 x
的赋值(可能使用某种循环)?
a = [(0,0,0), (0,1,1), (1,0,1), (1,1,0)]
b = [0, 2, 1, 1, 2, 2]
x = a[b[0]] + a[b[1]] + a[b[2]] + a[b[3]] + a[b[4]] + a[b[5]]
最佳答案
试试这个,sum
需要第二个参数:
print(sum(map(lambda x: a[x],b),()))
输出:
(0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1)
或者生成器:
print(sum((a[x] for x in b),()))
同时输出:
(0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1)
关于python - 许多列表的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52349497/