我尝试在两个嵌套for循环中尝试将1和2和2交换为2d列表中的1。我还在两个循环之前和之后显示列表 -
def train(cls, isSomethingTrue): #isSomethingTrue is always false
print('before {0}'.format(cls.xtrain))
for i in range(len(cls.xtrain)):
print('before {0}'.format(cls.xtrain[i]))
cls.ytrain.append([1, 0])
if(not isSomethingTrue):
for j in range(len(cls.xtrain[i])):
if cls.xtrain[i][j] == 1:
cls.xtrain[i][j] = 2
continue
elif cls.xtrain[i][j] == 2:
cls.xtrain[i][j] = 1
continue
print('after {0}'.format(cls.xtrain[i]))
print('after {0}'.format(cls.xtrain))
问题是外部循环只显示要交换的偶数索引(内部循环按预期工作)。怎么可能?
以下是截图 -