2021年3月8日星期一

For loop not updating the list

for i in Pool:      print(i)      while(i[0] != 1):          print('i is ' + str(i))          i=rotate(i)           print('after rotate i is ' + str(i))   print(Pool)  

Result:

[1, 2, 3]  [1, 3, 2]  [2, 1, 3]  i is [2, 1, 3]  after rotate i is [1, 3, 2]  [2, 3, 1]  i is [2, 3, 1]  after rotate i is [3, 1, 2]  i is [3, 1, 2]  after rotate i is [1, 2, 3]  [3, 1, 2]  i is [3, 1, 2]  after rotate i is [1, 2, 3]  [3, 2, 1]  i is [3, 2, 1]  after rotate i is [2, 1, 3]  i is [2, 1, 3]  after rotate i is [1, 3, 2]  [[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]  

From this code, Pool = [[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]

I can see my rotate function works and rotates 3,2,1 to 2,1,3 but it is not updated to the pool. The result I want is [[1, 2, 3], [1, 3, 2], [1, 3, 2], [1, 2, 3], [1, 2, 3], [1, 3, 2]]

https://stackoverflow.com/questions/66540239/for-loop-not-updating-the-list March 09, 2021 at 11:07AM

没有评论:

发表评论