了解Python中的for循环

时间:2018-11-29 16:26:48

标签: python

ordered_list = [
    [i, j, k]
    for i in range(0, x+1)
    for j in range(0, y+1)
    for k in range(0, z+1)
    if i + j + k != n]
print(ordered_list) 

输出:

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

我不了解此代码中for循环的工作方式。有人可以解释吗?

2 个答案:

答案 0 :(得分:1)

这称为列表理解,您可以查看链接以了解更多详细信息。Ref

# the code you listed above translate to this
ordered_list = []
for i in range(0, x+1):
    for j in range(0, y+1):
         for k in range(0, z+1):
            if i + j + k != n:
                ordered_list.append([i, j, k])
print(ordered_list) 

答案 1 :(得分:0)

这是一个列表理解,等同于:

ordered_list = [] 
for i in range(0, x+1): 
    for j in range(0, y+1): 
        for k in range(0, z+1):
             if i + j + k != n:
                 ordered_list.append([i, j, k])