print ([[a,b,c] for a in range(0,x+1) for b in range(0,y+1)

  • 本文关键字:in for range x+1 y+1 print python list printing
  • 更新时间 :
  • 英文 :

print ([[a,b,c] for a in range(0,x+1) for b in range(0,y+1) for c in range(0,z+1) if a + b + c != n ])

有人能向我解释一下这是如何打印下面提到的输出的吗

[[0, 0, 0], [0, 0, 1], [0, 1, 0], [1, 0, 0], [1, 1, 1]]

无法理解语法

>>> x=y=z=1
>>> n=2
>>> print ([[a,b,c] for a in range(0,x+1) for b in range(0,y+1) for c in range(0,z+1) if a + b + c != n ])
[[0, 0, 0], [0, 0, 1], [0, 1, 0], [1, 0, 0], [1, 1, 1]]

如果x、y、z都设置为1,n设置为2,这将只打印元素总和不为2的列表。

因此,总和为2的列表[0,1,1], [1,0,1], [1,1,0]不会出现在输出中。

最新更新