Bonjour,
je pensais que pour copier une liste, il suffisait d'utiliser une des manières suivantes :Cependant, cela ne marche que si les éléments ne sont pas des listes, en effet le test suivant le démontre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 b=list(a) ou b=a[:]Il faut donc écrire une méthode récursive pour copier une liste quel que soit le niveau de profondeur des listes et sous listes. Une telle copie de listes existe peut être dans une bibliothèque standard ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 >>> a=[[1,2,3],[4,5,6]] >>> b=list(a) >>> b[0].append(4) >>> print a,b [[1, 2, 3, 4], [4, 5, 6]] [[1, 2, 3, 4], [4, 5, 6]]
Merci
Partager