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 :

Recherche d'index dans list ou array


Sujet :

Python

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 58
    Par défaut Recherche d'index dans list ou array
    Bonjour,

    sous Python 2.5, je dois chercher l'index qui donne la position d'une liste dans une liste de listes (qu'on peut considérer comme une matrice).
    Ex.: pour u=[1,1,10], sa position dans t=[[1,1,1],[1,1,2],[1,10,100]] est 1.

    Comment résoudre ce problème avec la liste t ?
    Connaissez-vous une solution avec t en tant qu'objet array de numpy :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> import numpy
    >>> t=numpy.array([[1,1,1],[1,1,2],[1,10,100]])
    >>> t
    array([[1, 1, 1],
           [1, 1, 2],
           [1, 10, 100]])
    Merci pour votre aide.

  2. #2
    Membre émérite
    Homme Profil pro
    heu...
    Inscrit en
    Octobre 2007
    Messages
    648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : heu...

    Informations forums :
    Inscription : Octobre 2007
    Messages : 648
    Par défaut
    Je ne connais pas numpy, donc je ne sais si la solution que je m'apprête à donner est bonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    class MyArray(object):
        def __init__(self):
            self.myArray=[[1,1,1],[1,1,2],[1,10,100]]
        def getColumn(self,col):
            return [y[col] for y in self.myArray]
        def getLine(self,line):
            return self.myArray[line]
     
    if __name__=='__main__':
        a=MyArray()
        print a.getColumn(1)

  3. #3
    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
    Et ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    t=[[1,1,1],[1,1,2],[1,10,100],[2,44,76]]
    for col in xrange(3):
        if [1,1,10,44]==[t[i][col] for i in xrange(len(t))]:
            print 'index =',col
            break

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 58
    Par défaut
    Deux solutions pour le prix d'une,
    merci, ça marche.
    Je vais tout de même chercher des solutions avec le format array de NumPy.

Discussions similaires

  1. recherche d'index dans un string
    Par Bip0n3 dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 22/02/2014, 23h30
  2. Rechercher valeur Mini dans variable tableau (array)
    Par jojo86 dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 16/07/2013, 20h03
  3. Recherche de texte dans liste de choix
    Par Thomzz dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 24/06/2013, 17h12
  4. [AC-2010] Recherche sur sélection dans listes déroulantes
    Par scrouet dans le forum IHM
    Réponses: 2
    Dernier message: 02/04/2013, 11h06
  5. Réponses: 7
    Dernier message: 21/02/2006, 17h43

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