Python 3:如何从list2向list1添加特定的项目组?

问题描述

如何一次性将列表1中的某组项目添加到列表2中? (所以没有for循环)

例如:

list2 = [1,2,3,4] list2 = [1,4,5,6,7]

现在,我想将list1中的前3项添加到列表2中,因此最终结果将是: const Component = () => { const scale = useMotionValue(defaultScale); return ( <motion.img style={{ scale }} onMouseEnter={ () => scale.set(1.35) } onMouseLeave={ () => scale.set(defaultScale) } /> ) }

我知道您可以从列表中删除一组特定的项目,但是如何移动它们呢?谢谢!

解决方法

您可以使用列表切片[:3].extend()来做到这一点,

list1 = [5,6,7,8]
list2 = [1,2,3,4]
list3 = list2[:3]
list3.extend(list1)
print(list3)

演示: https://rextester.com/NPD40369

要从list2使用中获取最后3个元素,请list2[-3:]

,

有时候,它比我们想象的要简单。使用它来添加前三个元素:

list2.extend(list1[:3])

根据您的评论,使用它添加最后三个:

list2.extend(list1[-3:])
,

您可以使用列表slice,指向python简介的链接,这是一个很好的页面,用于解决此类问题。

如下所示:

list1 = [5,4]

list2 += list1[:3]
print(list2)

输出:

[1,4,5,7]

记住切片,它来自但不包括索引,直到索引(包括索引)。例如

list2 += list1[2:3]

将是:

[1,7]
,

您可以串联列表

list2 += list1[:3]