Python 已从多个子列表中删除多个项目

Python 已从多个子列表中删除多个项目,python,list,Python,List,我正在尝试创建一个函数,用于删除列表中多个子列表的多个元素(等于0)。问题是,当我创建我的函数时,它会返回一个没有子列表的大列表,因此我想知道如何对python说,删除该元素,但保留子列表作为原始列表 这是我的密码 def cero (data): lista=[] for list in data: for item in list: if item >0: lista.append(item) r

我正在尝试创建一个函数,用于删除列表中多个子列表的多个元素(等于0)。问题是,当我创建我的函数时,它会返回一个没有子列表的大列表,因此我想知道如何对python说,删除该元素,但保留子列表作为原始列表

这是我的密码

def cero (data):
    lista=[]
    for list in data:
       for item in list:
           if item >0:
               lista.append(item)
    return (lista)

将匹配的元素附加到一个列表中,这样就得到了一个列表,您可以复制原始结构

def cero (data):
    result = []
    for list in data:
        subresult = []
        for item in list:
            if item >0:
                subresult.append(item)
        result.append(subresult)
    return result 
或者使用列表理解语法

def filter_list(values):
    return [[x for x in sublist if x > 0] for sublist in values]

你能提供一些输入/输出/预期输出数据吗?而且,这可能是一个好主意。这解决了问题。非常迅速的帮助,谢谢you@N99不客气,你现在可以考虑接受答案(如果你愿意,可以投赞成票)