📌  相关文章
📜  如何检查列表是否嵌套 - Python (1)

📅  最后修改于: 2023-12-03 14:53:10.986000             🧑  作者: Mango

如何检查列表是否嵌套 - Python

在 Python 中,我们可以使用以下方法来检查一个列表是否是嵌套的(即包含其他子列表):

方法一:使用循环逐个判断元素是否为列表
def is_nested_list(lst):
    for item in lst:
        if isinstance(item, list):
            return True
    return False

该方法使用了一个简单的 for 循环遍历列表中的每个元素,然后使用 isinstance() 函数检查其是否为列表。如果找到了一个列表元素,即可判断该列表是嵌套的。

示例用法

>>> list1 = [1, 2, 3, [4, 5]]
>>> is_nested_list(list1)
True

>>> list2 = [1, 2, 3, 4, 5]
>>> is_nested_list(list2)
False
方法二:使用递归检查列表元素是否为列表
def is_nested_list(lst):
    for item in lst:
        if isinstance(item, list):
            return True
        elif isinstance(item, (tuple, set)):
            return is_nested_list(list(item))
    return False

这种方法首先遍历列表中的每个元素。如果元素是一个列表,则表示列表是嵌套的。如果元素是一个元组或集合,则将其转换为列表并进行递归调用以进一步检查。最后,如果没有找到嵌套的列表,则返回 False。

示例用法

>>> list1 = [1, 2, (3, [4, 5])]
>>> is_nested_list(list1)
True

>>> list2 = [1, 2, set([3, 4, 5])]
>>> is_nested_list(list2)
True

>>> list3 = [1, 2, 3, 4, 5]
>>> is_nested_list(list3)
False

以上就是检查列表是否嵌套的两种常用方法。根据实际需求选择适合您的场景的方法即可。