在 python 中的列表中间添加项目



所以我想做一个这样的列表:

[1, 2, 3, 4]

然后在位置"i"之前添加一个项目。例如,如果 i = 2,则列表将变为:

[1, 2, "desired number", 3, 4]

我怎样才能在python中做到这一点?谢谢。

Insert是一个

明智的选择,你也可以使用列表推导(切片(。

根据要插入的不均匀项目列表的哪一侧,您可能希望使用

lst = [1, 2, 3, 4, 7, 8, 9]
midpoint = len(lst)//2        # for 7 items, after the 3th
lst = lst[0:midpoint] + [5] + lst[midpoint:]  
print (lst) # => [1, 2, 3, 5, 4, 7, 8, 9]

lst = [1, 2, 3, 4, 7, 8, 9]
midpoint = len(lst)//2+1      # for 7 items, after the 4th
lst = lst[0:midpoint] + [5] + lst[midpoint:] 
print (lst) # => [1, 2, 3, 4, 5, 7, 8, 9]
只需在

中间对列表进行分区,然后在这些分区之间添加要添加的数字:

>>> l = [1, 2, 3, 4]
>>> add = 5
>>> l[:len(l)//2] + [add] + l[len(l)//2:]
[1, 2, 5, 3, 4]

最新更新