IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

python probleme d'algo sur les listes


Sujet :

Python

  1. #1
    Membre très actif
    Homme Profil pro
    Inscrit en
    Août 2013
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2013
    Messages : 274
    Par défaut python probleme d'algo sur les listes
    bonjour,

    voila mon code recupère dans un fichier points.txt des valeurs qui sont sous la forme :
    1 2 3
    4 5 6
    7 8 9

    j'aimerai donc pouvoir stocker les valeurs dans un tableau a 2 dimensions tab[][] de sorte que quand je fais :

    for i in range(0,3,1):
    print(tab[0][i])

    print m'affiche:
    1
    4
    7

    or dans mon code j'ai toujours
    1
    2
    3

    il ne fait rien d'autre et je ne comprend pas pourquoi.

    merci d'avance de votre aide.

    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    buff = ""
    count = 0
    tab = [[]*3] * 3
     
     
    file = open("points.txt","r") #on ouvre le fichier
     
    content = file.readlines()
    for line in content :   
     
        for char in line :
            if char == "\t" or char == "\n" or char == chr(13) :
                tab[count].append(buff)
                count += 1
                buff = ""        
     
                if count > 2 :
                    count = 0  
            else :
                buff += char
     
     
    file.close()
     
    for i in range(0,3,1) :
        print(tab[0][i])

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 699
    Par défaut
    Salut,
    Citation Envoyé par cosmoff Voir le message
    j'aimerai donc pouvoir stocker les valeurs dans un tableau a 2 dimensions tab[][] de sorte que quand je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for i in range(0,3,1):
         print(tab[0][i])
    print m'affiche:
    1
    4
    7

    or dans mon code j'ai toujours
    1
    2
    3
    Et çà donne quoi lorsque vous balayez le tableau suivant le premier indice plutôt que le second?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre très actif
    Homme Profil pro
    Inscrit en
    Août 2013
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2013
    Messages : 274
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,


    Et çà donne quoi lorsque vous balayez le tableau suivant le premier indice plutôt que le second?

    - W
    j'ai toujours la meme chose
    1
    2
    3
    meme quand je fait tab[1][0] j'ai 1 ce qui n'est pas logique
    en faite tab[0] = tab[1] = tab[2] mais je ne sais pas pourquoi

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 699
    Par défaut
    Citation Envoyé par cosmoff Voir le message
    meme quand je fait tab[1][0] j'ai 1 ce qui n'est pas logique en faite tab[0] = tab[1] = tab[2] mais je ne sais pas pourquoi
    Parce que vous avez initialisé tab via tab = [[]*3] * 3 plutôt qu'écrire:
    tab = [[]*3 for _ in range(3)].

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. [Python 3.X] probleme comprehension sur les listes
    Par loncle dans le forum Général Python
    Réponses: 0
    Dernier message: 16/10/2015, 15h45
  2. Probleme sur les listes WD
    Par Godvertomi dans le forum Windev Mobile
    Réponses: 0
    Dernier message: 12/06/2013, 16h18
  3. probleme sur les listes chainees
    Par guipe dans le forum Débuter
    Réponses: 19
    Dernier message: 21/04/2010, 15h49
  4. Probleme d'evaluation sur une liste numérique
    Par cryptorchild dans le forum Langage
    Réponses: 2
    Dernier message: 16/01/2006, 19h39
  5. Réponses: 24
    Dernier message: 27/09/2005, 21h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo