亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何根據索引列表從二維列表中的每個一維列表中選擇一個元素?

如何根據索引列表從二維列表中的每個一維列表中選擇一個元素?

寶慕林4294392 2023-06-20 16:39:15
我們索引列表的第 i 個元素表示我們想知道的 2D 列表中第 i 個 1D 列表的索引。如果我們的二維列表和索引列表如下所示:a = [[1,7,3],[9,0,8]]list_ix = [1, 0]期望的結果是 [7,9]。目前我通過使用如下循環來做到這一點:res = []for i in range(len(list_ix)):    res.append(a[i][list_ix[i]])但這在實際代碼中看起來很亂。有一個更好的方法嗎?我將不勝感激任何建議。謝謝你!
查看完整描述

3 回答

?
MMMHUHU

TA貢獻1834條經驗 獲得超8個贊

我認為這可以通過這種方式完成:

res?=?[a[idx][element]?for?idx,?element?in?enumerate(list_ix)]
查看完整回答
反對 回復 2023-06-20
?
慕后森

TA貢獻1802條經驗 獲得超5個贊

您可以使用zip()功能:


a = [[1,7,3],[9,0,8]]    

list_ix = [1, 0]


out = [l[i] for i, l in zip(list_ix, a)]

print(out)

印刷:


[7, 9]


查看完整回答
反對 回復 2023-06-20
?
桃花長相依

TA貢獻1860條經驗 獲得超8個贊

使用enumeratewhich 可以讓您從列表中獲取值并跟蹤您的當前位置。


a = [[1,7,3],[9,0,8]]


list_ix = [1, 0]


res = []

for i, outer_list_index in enumerate(list_ix):

? ? res.append(a[i][outer_list_index])


print(res)


查看完整回答
反對 回復 2023-06-20
  • 3 回答
  • 0 關注
  • 175 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號