在Python中将元素插入到列表中

时间:2014-09-29 12:21:24

标签: python

我遇到了以下代码:

b = [4,5,6] 
b[-1:-1] = [5] 
print b

哪个输出:

b = [4,5,5,6]

为了尝试了解发生的情况,我将第2行更改为b[-1:-2]b[-1:-3],并发现打印的b仍然相同。我真的不明白第二行是做什么的。

此外,当我更改b[-1:-1] = 5时,会出现错误,我不清楚为何会出现这种情况。

谢谢

1 个答案:

答案 0 :(得分:0)

这是经典的字符串/数组切片问题。 当你执行b[-1:-1]时,它会告诉我一个从最后一个元素到第二个元素的字符串,在这种情况下为空。并使用新列表分配/替换该列表[5]。

其他选项也是如此。

最后一句话

  b[-1:-1]=5

说给我一个清单并给它分配一个元素。因此,类型不匹配会导致错误。