我是python的新手,我正在尝试从一个列表中弹出项目,并使用for循环将其存储到另一个列表中,但是我无法获得所需的输出。
num1 = [1,2,3,4,5,6,7,8,9]
num2 = []
for m in num1:
num = num1.pop()
num2.append(num)
for p in num2:
print(p)
预期输出为:
9
8
7
6
5
4
3
2
1
实际输出:
9
8
7
6
5
答案 0 :(得分:0)
您需要获取列表中的.copy()
。
尝试一下
>>> num1 = [1,2,3,4,5,6,7,8,9]
>>> num2 = []
>>> for m in num1.copy():
num = num1.pop()
num2.append(num)
另一种方法:
>>> num2 = num1.copy().reverse() # using built-in reverse method
# remember reverse() will change the order in-place. so .copy() is used not to effect num1 order
输出:
>>> for p in num2:
print(p)
9
8
7
6
5
4
3
2
1