相关疑难解决方法(0)

Python - 从列表列表中删除列表(与.pop()类似的功能)

a=[[1,2,3],[4,5,6],[7,8,9]]
Run Code Online (Sandbox Code Playgroud)

.pop()不仅可以删除列表中的元素,还可以返回该元素.

我正在寻找一个类似的功能,可以删除并返回可能存在于另一个列表中间的整个列表.

例如,是否有一个函数[4,5,6]将从上面的列表中删除a,并返回它.

问题的原因是我正在排序列表itemgetter,标题行(字符串)和其余数据(datetime)之间存在冲突.因此,我希望有效地弹出代表标题的列表,进行排序,然后将其插入.

python list python-3.x

6
推荐指数
1
解决办法
2万
查看次数

从列表列表中删除子列表

我正在尝试找到解决此问题的最快方法,假设我有一个列表列表:

myList = [[1,2,3,4,5],[2,3],[4,5,6,7],[1,2,3],[3,7]]
Run Code Online (Sandbox Code Playgroud)

我希望能够删除作为其他列表之一的子列表的所有列表,例如我想要以下输出:

myList = [[1,2,3,4,5],[4,5,6,7],[3,7]]
Run Code Online (Sandbox Code Playgroud)

其中列表 [2,3] 和 [1,2,3] 被删除,因为它们完全包含在其他列表之一中,而 [3,7] 未被删除,因为没有一个列表包含所有这些元素。

我不限于任何一种数据结构,如果列表列表或集合更容易使用,那也很好。

我能想到的最好的办法是这样的,但它并没有真正起作用,因为我试图在迭代列表时从列表中删除它。我尝试将其复制到新列表中,但不知何故我无法使其正常工作。

for outter in range(0,len(myList)):
outterSet = set(myList[outter])
for inner in range(outter,len(myList)):
    innerSet = set(myList[inner])
    if innerSet.issubset(outterSet):
        myList.remove(innerSet)
Run Code Online (Sandbox Code Playgroud)

谢谢。

python list set

5
推荐指数
1
解决办法
2902
查看次数

标签 统计

list ×2

python ×2

python-3.x ×1

set ×1