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 :

Pointeur dans liste ?


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 418
    Par défaut Pointeur dans liste ?
    Bonjour,

    La fonction index donne la première occurence d'une valeur dans une liste:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    li =[2,4,7,'f',18,5,4,89,19,23,2,1]
    for item in li:
         print li.index(item)
    affiche 0 1 2 3 4 5 1 7 8 9 0 11


    Pourtant, pour qu'une boucle for sache qu'elle est sur la deuxième valeur 4 dans la liste, il faut bien qu'il existe une sorte de pointeur qui progresse dans la liste.
    Y aurait-il une fonction qui permettrait d'obtenir la valeur de ce pointeur au lieu de la valeur index() au cours d'une boucle for ?

    L'existence d'une telle fonction permettrait d'effectuer une action sur l'item en cours et non pas d'être renvoyé à la premiere occurence de sa valeur.

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Août 2004
    Messages
    723
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 723
    Par défaut
    Pas de méthode directe à ma connaissance, mais tu peux compter avec xrange.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    li =[2,4,7,'f',18,5,4,89,19,23,2,1]
    for i in xrange(len(li)):
        print i, li[i]
    Qui affiche bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    0 2
    1 4
    2 7
    3 f
    4 18
    5 5
    6 4
    7 89
    8 19
    9 23
    10 2
    11 1

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 119
    Par défaut
    Bonjour,

    j'utilise plutot:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    for index,item in enumerate(l):
       print index,item

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/09/2011, 09h07
  2. Pointeur et liste chainé dans une AP
    Par Younes Ch dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 13/06/2011, 11h37
  3. Double pointeurs dans les listes chainées
    Par NouK32 dans le forum Débuter
    Réponses: 8
    Dernier message: 10/02/2008, 18h19
  4. Réponses: 2
    Dernier message: 21/02/2007, 13h28
  5. [Turbo Pascal] Allocation et désallocation de pointeurs dans une fonction
    Par neird dans le forum Turbo Pascal
    Réponses: 13
    Dernier message: 17/11/2002, 20h14

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