如何在另一个列表的前面插入列表?

2024-04-24 17:15:10 发布

您现在位置:Python中文网/ 问答频道 /正文

>>> a = ['foo.py']
>>> k = ['nice', '-n', '10'] 
>>> a.insert(0, k)
>>> a
[['nice', '-n', '10'], 'foo.py']

我想将k列在与foo.py相同的级别,而不是子列表。


Tags: py列表foo级别insertnice
2条回答

而不是:

>>> a.insert(0, k)

使用:

>>> k.extend(a)
>>> k
['nice', '-n', '10', 'foo.py']

这将更新“k”列表“就位”,而不是创建副本。

列表连接(k+a)将创建一个副本。

切片选项(a[0:0]=k)也将更新“就地”,但IMHO更难读取。

应用切片:

a[0:0] = k

或者手动操作:

a = k + a

第一种方法对于任何位置的插入都保持不变,即a[n:n] = k 将k插入位置n,但第二种方法不相同,即

a = a[:n] + k + a[n:]

相关问题 更多 >