Quelle est la syntaxe pour insérer une liste dans une autre liste en python?
Donné deux listes:
x = [1,2,3]
y = [4,5,6]
Quelle est la syntaxe pour:
- Insérer
x
eny
tels quey
ressemble maintenant à[1, 2, 3, [4, 5, 6]]
? - Insérer tous les éléments de
x
eny
tels quey
ressemble maintenant à[1, 2, 3, 4, 5, 6]
?
- inverse listB, de là [listA.insert(pos,x) pour x dans [listB]]
- voir aussi ce post: stackoverflow.com/questions/5805892/...
- Voulez-vous dire
listA.insert(pos, x) for x in listB[::-1]
?
InformationsquelleAutor Compuser7 | 2010-09-20
Vous devez vous connecter pour publier un commentaire.
Voulez-vous dire
append
?Ou de fusion?
x.extend(y)
est en place,x+y
est de retour à la nouvelle liste. Etx += y
, qui n'a pas été mentionné ici, est similaire à l'étendre.La question ne précise pas exactement ce que vous voulez atteindre.
Liste a de l'
append
méthode, qui ajoute son argument à la liste:Il y a aussi le
extend
méthode, qui ajoute éléments à partir de la liste que vous passez un argument:Et bien sûr, il y a le
insert
méthode qui agit de manière similaire àappend
mais vous permet de spécifier le point d'insertion:D'étendre la liste à un point d'insertion, vous pouvez utiliser la liste de découpage (merci, @florisla):
Liste de découpage est très flexible car il permet de remplacer une gamme d'entrées dans une liste avec un éventail d'entrées à partir d'une autre liste:
http://docs.python.org/tutorial/datastructures.html
[1,2,4,5,6,3]
Vous pouvez aussi simplement faire...
x + y
etx += y
est juste la même chose mais à la place.Si vous souhaitez ajouter des éléments dans une liste (list2) à la fin de l'autre liste (liste), vous pouvez utiliser la liste d'étendre la méthode
Ou si vous voulez concaténer deux liste, vous pouvez utiliser le signe +
Si nous nous contentons de faire
x.append(y)
, y obtient référencé dans x telle que toutes les modifications apportées à y affecter annexé x ainsi. Donc, si nous avons besoin d'insérer uniquement des éléments, on doit effectuer les opérations suivantes:x = [1,2,3]
y = [4,5,6]
x.append(y[:])