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 :

question de base sur les listes


Sujet :

Python

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 31
    Points : 27
    Points
    27
    Par défaut question de base sur les listes
    bonsoir à tous,

    voila, j'ai un problème de compréhension sur les liste. quand j'éxecute le code suivant j'ai un affichage qui me signale une erreur sur mon indexation de tableau.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    x = [0,1,2,-1,-2 ]
    y = []
    for i in range(len(x)):
      y[i]= 3* x[i] + 1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
          5 y = []
          6 for i in range(len(x)):
    ----> 7   y[i]= 3* x[i] + 1
          8 
     
    IndexError: list assignment index out of range

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 31
    Points : 27
    Points
    27
    Par défaut
    quand on crée une liste en python est-elle comme un tableau dynamique ou bien il faut lui assigné une dimension au préalable ?

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par matlab31 Voir le message
    quand on crée une liste en python est-elle comme un tableau dynamique ou bien il faut lui assigné une dimension au préalable ?
    Pour ce genre de question, ouvrir son tuto. favori aux chapitres sur les listes et revoir un peu tout çà s'impose.
    Vous avez aussi l'interpréteur Python qui peut être utilisé comme aide mémoire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> L = []
    >>> L[0]
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    IndexError: list index out of range
    Ce qui est cohérent avec le fait que le premier élément d'une liste vide n'existe pas (encore).

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

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 132
    Points : 130
    Points
    130
    Par défaut
    Salut !

    Citation Envoyé par wiztricks Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> L = []
    >>> L[0]
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    IndexError: list index out of range
    Ce qui est cohérent avec le fait que le premier élément d'une liste vide n'existe pas (encore).
    Comme le dit Wiztricks, il n'existe pas "encore". Puisque vous avez défini votre liste y vide.

    quand on crée une liste en python est-elle comme un tableau dynamique ou bien il faut lui assigné une dimension au préalable ?
    Oui on peut en quelque sorte, vous avez donc 2 solutions assez simples :

    Soit vous initialisez votre liste y pour ensuite modifier les indices :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    y=[0 for i in range (len(x))]
    Soit vous pouvez grâce à la méthode append() ajouter les indices un par un dans votre liste y vide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for i in range(len(x)):
      y.append(3* x[i] + 1)
    Après il est vrai qu'un petit tuto sur les listes ne ferait pas de mal

    Bonne journée,

    Stabilo.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 31
    Points : 27
    Points
    27
    Par défaut
    merci de vos réponse.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. question de base sur les transactions
    Par nouraty dans le forum Débuter
    Réponses: 3
    Dernier message: 22/12/2010, 21h51
  2. question de base sur les pointeurs
    Par Ganondorf dans le forum Débuter
    Réponses: 4
    Dernier message: 26/08/2010, 17h07
  3. question de base sur les classes
    Par tanguy.L dans le forum Langage
    Réponses: 10
    Dernier message: 28/02/2008, 17h37
  4. Réponses: 13
    Dernier message: 10/10/2007, 10h09
  5. Question de base sur les classes
    Par deaven dans le forum C++
    Réponses: 3
    Dernier message: 27/11/2005, 16h20

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