在JavaScript中,我可以使用splice
将多个元素的数组插入到数组中:myArray.splice(insertIndex, removeNElements, ...insertThese)
.
但是我似乎找不到一种方法在Python中 * 不 * 使用concat列表来做类似的事情,有这样的方法吗?(已经有关于inserting single items的问答,而不是多个。)
例如myList = [1, 2, 3]
,我想通过调用myList.someMethod(1, otherList)
来获得[1, 4, 5, 6, 2, 3]
,从而插入otherList = [4, 5, 6]
7条答案
按热度按时间gwbalxhn1#
要扩展列表,只需使用
list.extend
;要在索引处插入任何可迭代对象中的元素,可以使用slice assignment...rqmkfv5c2#
Python列表没有这样的方法,这里有一个helper函数,它接受两个列表,并把第二个列表放到第一个列表的指定位置:
yks3o0rb3#
我不确定这个问题是否还在继续,但我最近写了一个简短的代码,类似于这里所问的问题。我正在写一个交互式脚本来执行一些分析,所以我有一系列的输入来读取CSV中的某些列:
然后,我把for循环放到一行中,读入所需的索引位置:
这可能不一定像它可能的那样简洁(我很想知道什么可能工作得更好!),但这可能会清理一些代码。
k4emjkb14#
下面的代码在避免创建新列表的情况下实现了这一点,但是我仍然更喜欢@RFV5s方法。
请注意,有必要颠倒
tmp_list
的顺序,因为pop()
会从original_list
的末尾向后给出这些值。fquxozlt5#
JavaScript的Python等价物
将是:
nzk0hqpo6#
wixjitnu7#
使用列表名。扩展([val1,val2,val,etc])