有两个列表a,b 一一对应,如何将a从小到大排序后输出对应b的值呢
用zip()函数把a,b捆绑到一起
>>> a = [2,1,4,3]
>>> b = [4,2,8,6]
>>> d = list(zip(a,b))
>>> d
[(2, 4), (1, 2), (4, 8), (3, 6)]
>>> sorted(d)
[(1, 2), (2, 4), (3, 6), (4, 8)]
>>> [i[1] for i in sorted(d)]
[2, 4, 6, 8]
是这个意思?
a = [1,8,4,2,5]
b = ['a','b','c','d']
c = [[n[0],n[1]] for n in zip(a,b)]
c.sort()
for x in c:
print(x[0], ":", x[1])