簡體   English   中英

使用列表中的索引來獲取另一個列表中的另一個值/元素

[英]Using index from a list to get another value/element in another list

我有一個項目,其中我必須獲取列表中某個元素的索引,然后使用該索引在另一個列表中獲取另一個值。

例如,

j_set = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
on_going = [1]
e_list = [[], [1], [1], [2], [3], [3], [5], [4, 7], [6], [8, 9], [10]]

到目前為止,代碼如下所示:

if isinstance(on_going, int):
    on_going = [on_going]
idx = [y for y, x in enumerate(e_list) if x in on_going] # code to get index in e_list
print(idx)

for i in idx:
    q_active = j_set.append(i)
    print(q_active)

目標是從e_list獲取on_going中值/元素的相應index 然后,使用該索引從j_set獲取相應的活動並存儲在q_active中。

Expected output:
q_active = [2, 3]

問題是,使用上面的代碼,我得到一個 output 用於將值存儲在 q_active 中:

[1, 2] #idx output
None
None

任何幫助,將不勝感激! 謝謝!

您可以使用enumerate從列表中獲取索引和數據:

e_list = [[], [1], [1], [2], [3], [3], [5], [4, 7], [6], [8, 9], [10]]
for data_index, data_val in enumerate(e_list):
  print(data_index, data_val)
  # write business logic here

也許使用 list_comprehension:

print([j_set[item] for i in on_going for item in range(len(e_list)) if i in e_list[item]])
#[2, 3]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM