Python中insert函数的用法是insert(索引位置,插入对象),列表索引位置正向是从0开始,逆向是从-1开始。
但在使用insert函数插入元素时,正向插入可以正常插入到索引位置,但逆向插入时却在索引位置之前,这该如何理解?
list = ['A', 'B', 'C', 'E', 'F', 'G']
list.insert(3,'D')
>>> list
['A', 'B', 'C', 'D', 'E', 'F', 'G']
#把'D'正向添加在第3标识位没有问题
list.insert(-1,'!')
>>> list
['A', 'B', 'C', 'D', 'E', 'F', '!', 'G']
#把'!'逆向添加在-1位却会出现在-2位上
>>> list[-2]
'!'
#-2标识位确实是倒数第二个啊
只要插入的位置大于等于列表的长度,都可以插到最后
插入的意思是:这个位置是我的,你们都往后挪一下
个人理解:你要插在最后应该输入-0,但是因为-0其实就是0,他会插入到顺数第一位。
所以如果要插入到最后的话,直接append就好了