如何鏈接這兩個列表,所以當一個列表的變化(順序) 其他名單跟隨同一個號碼,連接兩個列表蟒蛇
List2=[5,4,3,2,1]
List3=[2,4,6,8,10]
改變列表2的順序和預期產出保持
List2=[1,2,3,4,5]
List3=[10,8,6,4,2]
但需要改回1-5
的列表2順序會改變,每次卻總是(Python的3.6)
如何鏈接這兩個列表,所以當一個列表的變化(順序) 其他名單跟隨同一個號碼,連接兩個列表蟒蛇
List2=[5,4,3,2,1]
List3=[2,4,6,8,10]
改變列表2的順序和預期產出保持
List2=[1,2,3,4,5]
List3=[10,8,6,4,2]
但需要改回1-5
的列表2順序會改變,每次卻總是(Python的3.6)
定義一個小幫助函數,根據其中的一個排序這兩個列表。
def revert(a, b):
a, b = map(list, zip(*sorted(zip(a, b), key=lambda x: x[0])))
return a, b
現在,在需要時調用此函數。
List2, List3 = revert(List2, List3)
嗨,我只是測試這個謝謝你的快速答案給我幾個米! – GraphicsLab
omg COLDSPEED你一個傳奇,非常感謝你如果開始不工作,似乎工作不好評論謝謝! – GraphicsLab
喜應該是速戰速決,但得到:JudgeList1,ScoreList1 =恢復(JudgeList1,ScoreList1) UnboundLocalError:局部變量「JudgeList1」分配 – GraphicsLab
List2=[5,4,3,2,1]
List3=[2,4,6,8,10]
的 「容易」 的方式將是使dict3的字典和使用後,你翻拍清單2.事情是這樣的:
# Pair the lists
List3 = dict(zip(List2,List3))
# Remake List2
List2 = sorted(List2)
# Remake List3 based on List2
List3 = [List3[key] for key in List2]
List3
返回:
[10, 8, 6, 4, 2]
我不認爲這是什麼即時尋找對不起 – GraphicsLab
@GraphicsLab可能是這樣,但字典這些任務就變得瑣碎。 –
這兩個列表是相互獨立的嗎?更改一個列表應該對另一個列表沒有影響。你如何改變'list2'的順序? – davedwards
嗨,他們是輸入的,我知道我想以某種方式鏈接它們,如果可能的話? – GraphicsLab
哦,我的錯誤,我誤解了這個問題,謝謝你進一步解釋。但也許已經提供的答案有幫助 – davedwards