如何使用list.insert将Python中的元素添加到列表末尾?

And*_*son 32 python list insert

例如,有一个列表

a=[1,2,3,4]
Run Code Online (Sandbox Code Playgroud)

我可以用

a.append(some_value)
Run Code Online (Sandbox Code Playgroud)

在列表末尾添加元素,和

a.insert(exact_position, some_value)
Run Code Online (Sandbox Code Playgroud)

插入元素在列表中的任何其他位置,但不能在最后

a.insert(-1, 5)
Run Code Online (Sandbox Code Playgroud)

将返回[1,2,3,5,4].那么如何使用list.insert(position,value)将元素添加到列表末尾

EdC*_*ica 50

在这种情况下,您必须将新的序号位置传递给insert使用len:

In [62]:

a=[1,2,3,4]
a.insert(len(a),5)
a
Out[62]:
[1, 2, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)

  • 另外,使用 a.insert(-len(a),5) 您可以在开头插入元素哈哈 (5认同)
  • 不需要+1.`len(a)`已经超出了列表的范围 (3认同)

Jon*_*n L 6

list.insert 与任何索引 >= len(of_the_list) 将值放在列表的末尾。它的行为类似于追加

Python 3.7.4
>>>lst=[10,20,30]
>>>lst.insert(len(lst), 101)
>>>lst
[10, 20, 30, 101]
>>>lst.insert(len(lst)+50, 202)
>>>lst
[10, 20, 30, 101, 202]
Run Code Online (Sandbox Code Playgroud)

时间复杂度,追加 O(1),插入 O(n)