Python中的每个项目长度

Ezg*_*ora 1 python search

我试图定义一个函数,如果列表中的每个项都小于2则返回true,而在其他情况下则返回false.items的类型可以是与列表不同的整数,float,str或sth.我应该检查清单.

def ifeveryitems(lst):
    for items in lst:
        if isinstance(items,list) and len(items) <= 2:
           return True and ifeveryitems(????)  # '????' should be the items other than the item that has been searched #
        else:
           return False
Run Code Online (Sandbox Code Playgroud)

Ry-*_*Ry- 5

根据您的描述判断,您根本不需要递归调用:

def ifeveryitems(lst):
    for items in lst:
        if isinstance(items, list) and len(items) > 2:
           return False

    return True
Run Code Online (Sandbox Code Playgroud)

或者,或者:

def ifeveryitems(lst):
    return all(len(items) <= 2 for items in lst if isinstance(items, list))
Run Code Online (Sandbox Code Playgroud)