x = [1, 2, 3, 4, 5, 6, 7, 8]
for num in range(len(x)):
x[num] = x[-(num + 1)]
print(x)
伙计们,我想知道为什么上面的代码不能按相反的顺序修改列表。当我运行代码时,我得到了[8, 7, 6, 5, 5, 6, 7, 8]
。请协助
要反转字符串,只需执行mylist.reverse()
或mylist[::-1]
即可。有关这方面的更多详细信息,请参阅去年的Stack Overflow响应。
x = [1, 2, 3, 4, 5, 6, 7, 8]
x = x[::-1]
原始列表:
[1, 2, 3, 4, 5, 6, 7, 8]
更新列表:
[8, 7, 6, 5, 4, 3, 2, 1]
您正在替换现有的值,然后循环使用它们。您要使用的是相反的方法。
x = [1, 2, 3, 4, 5, 6, 7, 8]
x.reverse()
print(x)