为什么list.insert(-1,any value)不替换python中的最后一个值?

问题描述 投票:0回答:1

尝试使用插入方法添加最后一个值,它始终是第二个最后值

列表 = [10,3,5,100,7,9]

list_1=(列表插入(-1,'你好'))

打印(列表_1)

#预期结果 [10,3,5,100,7,9,'hello'] #实际结果[10,3,5,100,7,'hello',9]

python python-3.x list arraylist insert
1个回答
-1
投票

当您传递负索引时,它是从列表的开头而不是末尾开始计数。 更多这里

 Index:  -6  -5  -4   -3   -2  -1
List:  [ 10,  3,  5, 100,   7,  9]

当您插入(您的代码)时

 Index:  -7  -6  -5   -4   -3   -2  -1
List:  [ 10,  3,  5, 'hello', 100,   7,  9] 

所以你得到了

[10, 3, 5, 100, 7, 'hello', 9]

代码更正

尝试

my_list[-1] = 'hello'

你得到了

[10, 3, 5, 100, 7, 'hello']
© www.soinside.com 2019 - 2024. All rights reserved.