Python bug:list.insert()无返回值

1. 问题场景:为一个“二维”list中每个“一维”list的开始位置插入一个新元素

例:[[1,2,3], [4,5,6]] -> [[‘head’,1,2,3], [‘head’,4,5,6]]

2. 错误方法

a = [[1, 2, 3], [4, 5, 6]]
a = [x.insert(0, 'head') for x in a]
print(a)

[Out]:
[None, None]

本想着利用list.insert()方法,在index=0的位置插入’head’,但是发现得到了None
原因是,list.insert()是原地操作,没有返回值~

3. 正确方法

利用列表加法即可解决

a = [[1, 2, 3], [4, 5, 6]]
a = [['head'] + x for x in a]
print(a)

[Out]:
[['head', 1, 2, 3], ['head', 4, 5, 6]]
发布了52 篇原创文章 · 获赞 4 · 访问量 2123

猜你喜欢

转载自blog.csdn.net/qq_42191914/article/details/104706013