从嵌套的元素列表中弹出元素列表

Posted

技术标签:

【中文标题】从嵌套的元素列表中弹出元素列表【英文标题】:Pop List of elements from a nested list of elements 【发布时间】:2022-01-06 15:04:39 【问题描述】:
X = [[1, 0], [1, 1], [1, 2], [1, 3], [1, 4], [1, 5], [1, 6], [1, 7], [1, 8], [1, 9], [2, 0], [2, 1], [2, 2], [2, 3], [2, 4], [2, 5], [2, 6], [2, 7], [2, 8], [2, 9], [3, 0], [3, 1], [3, 2], [3, 3], [3, 4], [3, 5], [3, 6], [3, 7], [3, 8], [3, 9], [4, 0], [4, 1], [4, 2], [4, 3], [4, 4], [4, 5], [4, 6], [4, 7], [4, 8], [4, 9], [5, 0], [5, 1], [5, 2], [5, 3], [5, 4], [5, 5], [5, 6], [5, 7], [5, 8], [5, 9], [6, 0], [6, 1], [6, 2], [6, 3], [6, 4], [6, 5], [6, 6], [6, 7], [6, 8], [6, 9], [7, 0], [7, 1], [7, 2], [7, 3], [7, 4], [7, 5], [7, 6], [7, 7], [7, 8], [7, 9], [8, 0], [8, 1], [8, 2], [8, 3], [8, 4], [8, 5], [8, 6], [8, 7], [8, 8], [8, 9], [9, 0], [9, 1], [9, 2], [9, 3], [9, 4], [9, 5], [9, 6], [9, 7], [9, 8], [9, 9]]

Y = [[9, 3], [9, 1], [5, 5], [7, 9], [0, 9], [4, 2], [7, 6], [5, 3], [6, 2], [8, 4], [5, 8], [4, 9], [7, 4], [3, 5], [6, 0], [5, 6], [6, 8], [4, 0], [6, 1], [8, 2], [7, 5], [9, 4], [9, 8], [9, 5], [6, 4]]

Z = []

如何获取从x到z的元素列表,其中x中y的所有元素都被删除

【问题讨论】:

你想要的输出是什么,但到目前为止你试过了吗?? Z = [e for e in X if e not in Y]? 你能举一个简短的例子说明输出应该是什么样子吗? 【参考方案1】: 将 X 和 Y 转换为元组集合而不是列表列表 Z 将是 x 和 y 的差值。

https://docs.python.org/3/library/stdtypes.html#frozenset.difference

【讨论】:

【参考方案2】:

你可以做一个列表推导来创建Z

Z=[e for e in X if e not in Y]

然后使用切片分配执行另一个列表理解,以从第一步中“删除”元素:

X[:]=[e for e in X if e not in Z]

【讨论】:

以上是关于从嵌套的元素列表中弹出元素列表的主要内容,如果未能解决你的问题,请参考以下文章

Redis 列表(List)

Redis 列表(List)

list

redis常用方法

为啥我不能从字符堆栈中弹出元素?

从嵌套列表的子数组返回元素的索引