1 python list-comprehension list
我试图计算两个列表中出现0的次数,并使用python保存该数字.我试图使用'list comprehension'命令将它放入第三个列表,但我没有得到我想要的输出.
我的两个清单是:
list1 = [0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]
list2 = [0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0]
Run Code Online (Sandbox Code Playgroud)
因此,每当在每个列表的相同位置出现0时,我想将"0"附加到新列表中.我想对那些做同样的事情.
新列表应如下所示:
newlist = [0,1,1,1,1,0,1,1,1,1,0,1,1,1,0,1,1,1]
Run Code Online (Sandbox Code Playgroud)
在此先感谢您的帮助,我一直在努力弄清楚如何在几个小时内做到这一点无济于事!
您可以使用列表推导,如下所示:
answer = [x for x, y in zip(list1, list2) if x == y]
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用简单的列表操作在没有列表推导的情况下解决它:
answer = []
for x, y in zip(list1, list2):
if x == y:
answer.append(x)
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,answer将是:
[0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1]
Run Code Online (Sandbox Code Playgroud)