Partage
  • Partager sur Facebook
  • Partager sur Twitter

Dupliquer le dernier élément d'un tableau

Sujet résolu
    21 décembre 2010 à 17:30:46

    Bonjour,
    Je ne sais pas si ce problème a déjà été traité, les mots-clefs sont durs à trouver pour ce problème ^^ .
    J'ai une variable qui se présente comme ceci :
    t=[[1,2,3,4,5]]
    

    Pour dupliquer le dernier élément j'utilise t.append(t[-1]) ou encore t+=[t[-1]] .
    J'obtiens donc ceci :
    [[1, 2, 3, 4, 5], [1, 2, 3, 4, 5]]

    Maintenant si je veux modifier le nouvel élément par exemple comme ceci :
    t[1][3]=12
    

    La modification a lieu sur les deux éléments, j'obtiens :
    [[1, 2, 3, 12, 5], [1, 2, 3, 12, 5]]

    Ce qui n'était de toute évidence pas voulu.
    C'est sûrement dû aux adresses des éléments...
    Alors ma question est : comment modifier un élément de mon tableau sans modifier les autres svp ?
    Merci d'avance,
    snake_48

    PS : J'utilise Python 2.6.

    Edit : Après vérification en utilisant la fonction id, les deux éléments ont bien la même adresse...
    Edit1 : Arf, la solution était la fonction list : t.append(list(t[-1])) . J'aurais dû y penser avant :) . Sujet résolu, désolé du dérangement !
    • Partager sur Facebook
    • Partager sur Twitter
      21 décembre 2010 à 17:58:25

      ou
      t.append(t[-1][:])
      • Partager sur Facebook
      • Partager sur Twitter

      Python c'est bon, mangez-en. 

      Dupliquer le dernier élément d'un tableau

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown