为什么insert将我的列表更改为None类型?

时间:2015-09-14 20:56:59

标签: python list python-3.x insert

animals = ["aardvark", "badger", "duck", "emu", "fennec fox"]
print(animals)

animals = animals.insert(2,"cobra")
print(animals) 

插入函数将列表转换为无类型:

enter image description here

我不明白为什么会这样。

来自python doc&#;;

  

在指定位置插入项目。第一个参数是索引   要插入的元素,所以a.insert(0,x)插入   列表前面

2 个答案:

答案 0 :(得分:2)

insert函数不会返回任何内容(或者返回None,就像Cong Ma注意到的那样):它修改了输入列表!

所以只需使用功能而不将结果(无!)重新分配给变量:

animals = ["aardvark", "badger", "duck", "emu", "fennec fox"]
animals.insert(2,"cobra")
print(animals)
['aardvark', 'badger', 'cobra', 'duck', 'emu', 'fennec fox']

答案 1 :(得分:1)

这是一个没有返回值的就地插入。请改用它。

animals.insert(2, "cobra")
print(animals)