这是我的代码
for j in range(5,8):
for i in range(6):
print("[{}][{}]".format(i,j))
j-=1
这就是我所得到的。在第一个完整循环之后,右边的j值应该从5减少到4。查看代码以获得进一步说明
[0][5]
[1][4]
[2][3]
[3][2]
[4][1]
[5][0]
[0][6] # Here, I want the j value or 6 to decrement to 4 but it's incrementing
[1][5]
[2][4]
[3][3]
[4][2]
[5][1]
[0][7]
[1][6]
[2][5]
[3][4]
[4][3]
[5][2]
这就是我想要的
[0][5]
[1][4]
[2][3]
[3][2]
[4][1]
[5][0]
[0][4] # Here, I want the j value to decrement to 4
[1][3]
[2][2]
[3][1]
[4][0]
[0][3]
[1][2]
[2][1]
[3][0]
答案 0 :(得分:1)
在不知道你实际想要完成的是什么的情况下,它有点难以回答。
但是,这应该有效:
for i in range(6, 3, -1):
for j in range(i):
print("[{}][{}]".format(j, i-j-1))
print
答案 1 :(得分:0)
我猜想当你返回外部循环语句时, j 从 range 生成器接收它的值 - 正如它应该的那样,覆盖无意义的操作。
因为 i 的值(仇恨单字母变量名称的另一个原因)返回0 - 再次,通过循环 - 而 j 增加到6,结果很明显。
答案 2 :(得分:0)
你永远不应该这样修改循环变量。我认为每个新循环都会重置变量。看来你想要两种数字组合的组合。请改用itertools。