根據另一個數組進行排序

一個數組根據另一個數組進行排序

a = ['1', '5', '4', '3']
b = ['e', 'f', 'q', 'o']
print "before sort"
print a
print b
n = len(a)
for i in range(n-1):
    for j in range(1,n-i):
        if int(a[j-1]) > int(a[j]):
            a[j-1], a[j] = a[j], a[j-1]
            b[j-1], b[j] = b[j], b[j-1]
print "after sorted"
print a
print b

Output:

before sort
['1', '5', '4', '3']
['e', 'f', 'q', 'o']
after sorted
['1', '3', '4', '5']
['e', 'o', 'q', 'f']

2.使用lambda進行排序

a = ['1', '5', '4', '3']
b = ['e', 'f', 'q', 'o']
c = zip(a,b)
>>> sorted(c, key=lambda c: c[0])
[('1', 'e'), ('3', 'o'), ('4', 'q'), ('5', 'f')]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章