【问题标题】:Pop an item in list present in another list弹出另一个列表中存在的列表中的项目
【发布时间】:2022-09-29 21:05:29
【问题描述】:

我的问题是我试图从另一个列表中的列表中删除元素。

我的列表1看起来像这样 = [[6, 0, 3, 1, 5, 7, 8, 2, 4], [1, 5, 0, 4, 6, 2, 7, 8, 3]]
我的清单2看起来像这样 = [[1, 5, 2, 4, 6, 0, 7, 8, 3], [1, 5, 0, 4, 6, 2, 7, 8, 3], [1, 8, 2、4、0、6、7、5、3]]

我想继续列表1应该是这样的: [6, 0, 3, 1, 5, 7, 8, 2, 4]

我的清单2将永远是更大的列表,因为它保存了已探索或访问过的状态。清单 1有可能的状态。所以一个想法是我想和清单1被弹出后。 我试过这样的事情:

for x in range(0, len(list2)):
   temp = list[x]
   temp_h = temp.init_state

   if temp_h in list2:
       list1.pop(x)

但这不会因为超出范围索引(我理解)而起作用。我没有任何想法如何使用它。

  • list[x] 应该是什么意思?
  • 你不能构造一个新的列表吗?

标签: python


【解决方案1】:

这回答了你的问题了吗 ?

list1 = [[6, 0, 3, 1, 5, 7, 8, 2, 4], [1, 5, 0, 4, 6, 2, 7, 8, 3]]
list2 = [[1, 5, 2, 4, 6, 0, 7, 8, 3], [1, 5, 0, 4, 6, 2, 7, 8, 3], [1, 8, 2, 4, 0, 6, 7, 5, 3]]

res = [item for item in list1 if item not in list2]
print(res) # [[6, 0, 3, 1, 5, 7, 8, 2, 4]]

【讨论】:

    猜你喜欢
    • 2017-06-06
    • 1970-01-01
    • 2022-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-23
    • 1970-01-01
    • 2013-12-12
    相关资源
    最近更新 更多