这个问题的逻辑或代码是什么? reverse()
函数不带任何参数,list[::-1]
也是相同的。如何以简单的方式做到这一点?
示例,给定:
list = [1,5,4,3,2,6]
反转5 ... 2,输出将为:
list = [1,2,3,4,5,6]
答案 0 :(得分:3)
您可以使用列表切片分配,它可以就地修改列表:
>>> L = [1, 5, 4, 3, 2, 6]
>>> L[1:5] = L[4:0:-1]
>>> L
[1, 2, 3, 4, 5, 6]
答案 1 :(得分:3)
您可以将列表的切片重新分配给相反的切片
l = [1,5,4,3,2,6]
l[1:5] = l[1:5][::-1]
print(l)
#[1, 2, 3, 4, 5, 6]
答案 2 :(得分:0)
你可以这样做:
l = [1,5,4,3,2,6]
index5 = l.index(5)
index2 = l.index(2)
l[index5:index2+1] = l[index2:index5-1:-1]
如果您希望它更明确,可以使用reversed
:
l[index5:index2+1] = reversed(l[index5:index2+1])
答案 3 :(得分:0)
编辑:对不起,我误解了你的问题。
>>> l = [1, 5, 4, 3, 2, 6]
>>> temp = l[1:5]
>>> temp.reverse()
>>> l[1:5] = temp
>>> l
>>> [1, 2, 3, 4, 5, 6]