Python 删除列表中的列表

Python 删除列表中的列表,python,list,nested-lists,Python,List,Nested Lists,我想删除外部列表中的列表[1,2,3]。 我尝试了或isinstance(item,list),但没有成功,嵌套列表仍然存在 messy_list = ["a", 2, 3, 1, False, [1, 2, 3]] # Your code goes below here messy_list.pop(3) messy_list.insert(0,1) for item in messy_list: if isinstance(item, str) or isinstance(ite

我想删除外部列表中的列表[1,2,3]。 我尝试了
或isinstance(item,list)
,但没有成功,嵌套列表仍然存在

messy_list = ["a", 2, 3, 1, False, [1, 2, 3]]

# Your code goes below here
messy_list.pop(3)
messy_list.insert(0,1)

for item in messy_list:
    if isinstance(item, str) or isinstance(item, bool):
        messy_list.remove(item)

messy_list.pop(-1)

print(messy_list)

我想知道是否有更好的方法来检查列表中是否有列表,然后从外部列表中删除,而不必使用硬编码。pop(-1)

将删除所有内部列表:

messy_list = ["a", 2, 3, 1, False, [1, 2, 3]] 

cleaned = [item for item in messy_list if not isinstance(item,list)]

print(cleaned)

我正在使用一个列表理解,它检查您的
凌乱列表的所有
,只有当列表本身不是列表时才将其添加到生成的新列表中。

我们可以像删除单个列表一样删除列表中的列表,只需将列表对象的引用提供给del函数即可

del(list_object).
例如:-

a = [1,2,3,[4,5,6]]
del(a[3])
在这之后,a将看起来像

[1, 2, 3]

也许是一个列表理解
messy\u list=[i for i in messy\u list if not isinstance(i,list)]
@Dark你比我强,想让它成为一个答案吗?
或isinstance(item,list)
对我有效,所以可能是别的什么?顺便说一句,不建议对循环的列表执行操作,而是使用副本,一种方法是对凌乱列表中的项目[:]:
进行
,或者使用列表理解。