关于迭代list中元素是否满足某一条件的问题

Hi,大家好,我有个算法想的不太明白,求帮助
我有一个lista:
lista=[a,b,c,d],a,b,c,d是一些数字
lista在一个循环之下,每次循环ista里边的数值是不一样的,即>

for i in range (3):
    lista=[0,0,0,0]   #i=0
    lista=[0,0,1,2]   #i=1
    lista=[0,1,2,3]   #i=2

现在我需要判断每个i step时,数组中的元素是不是全部满足某一条件,比如全部为零,如果全部为零,那么在另外一个listb里append()一个零,如果不是,那么运行一些其他的代码,即:

for i in range (3):
    lista=[0,0,0,0]   #i=0
    lista=[0,0,1,2]   #i=1
    lista=[0,1,2,3]   #i=2
    for j in range (len(lista):
        if all(lista=[j]==0 for j in lista):
            listb.append(0)

但是这个代码运行以后,只能判断lista每个元素是否为0而不是整个lista所有的元素是否为0,我该如何处理?
谢谢大家

阅读 5k
1 个回答
>>> lista=[0,0,0,0]
>>> reduce(lambda x,y:x&y, map(lambda x:x==0, lista), True)
True
>>> lista=[0,0,0,1]
>>> reduce(lambda x,y:x&y, map(lambda x:x==0, lista), True)
False
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题