模块运行结果一直是空列表,为什么,


ls = [[1, 2, -4], [-1, 2, -3], [-2, 2, 1]]
l = len(ls)
for i in range(0, l):
    a = i
    fdx = []
    for j in range(0, l, -1):
        fdx.append(ls[j][a])
        a += 1
        if a == l:
            a = 0
    print(fdx)

结果:
[]
[]
[]

range(0,1) 得问题
range(a,b) 是一个等差递增数列。起点为a,终点为b.且不包含b.
range(0,1,-1)是一个等差递减数列。起点a>终点b,才可以。

是要这个结果么?

img

 
ls = [[1, 2, -4], [-1, 2, -3], [-2, 2, 1]]
l = len(ls)
for i in range(0, l):
    a = i
    fdx = []
    for j in range(0, l):
        fdx.append(ls[j][a])
        a += 1
        if a == l:
            a = 0
    print(fdx)

这里for j in range(0, l, -1):为-1就取不到值了。