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 :

questions sur les listes


Sujet :

Python

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 106
    Points : 40
    Points
    40
    Par défaut questions sur les listes
    Salut!
    une question:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    my_list = [["a","b","f","g"],["a","b","e","g",["a","c","f","g"]]
    new_list = ["a","c","g"]
    Comment implementer un code dans python qui pourra retourner la sous-liste de my_list qui contient tous les elements de la liste new_list.
    merci d avance

  2. #2
    Expert éminent sénior
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Points : 10 067
    Points
    10 067
    Par défaut
    regarde avec la classe set

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    filter(lambda x: set(x).intersection(set(new_list)) == set(new_list), my_list)
    =>
    S'il n'y a qu'un élément à trouver, une boucle for (ou while) suffira aussi

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 106
    Points : 40
    Points
    40
    Par défaut merci guigui!
    merci guigui!
    une autre question:
    j ai une list my_list = [["a","b"],["c","d","e"],["a","b","d","f"]]. Comment faire pour avoir la sous liste contenant le moins d ´ elements? cad ["a","b"]
    Merci

  4. #4
    Expert éminent sénior
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Points : 10 067
    Points
    10 067
    Par défaut
    Pour avoir le nombre de "d" dans chaque sous-liste:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> c = map(lambda x: x.count("d"), my_list)
    >>> c
    [0, 1, 1]
    >>> my_list[c.index(min(c))]
    ['a', 'b']

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 106
    Points : 40
    Points
    40
    Par défaut
    et si j ai plutot:
    my_ list = [["a","b"],["c","g","j"],["a","b","d","f"]], (cad que les elements de chaque sous-liste sont totalament insemblables)
    merci encore

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 941
    Points : 1 384
    Points
    1 384
    Par défaut
    Pour la première question, j'ai une autre réponse possible:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [l for l in my_list if all(x in l for x in new_list)]

Discussions similaires

  1. Question sur les listes indexées
    Par devplus dans le forum Hibernate
    Réponses: 0
    Dernier message: 25/10/2008, 16h55
  2. Question sur les listes d'affichage
    Par brouss dans le forum OpenGL
    Réponses: 3
    Dernier message: 08/03/2007, 12h56
  3. question sur les listes/set/vector
    Par deubelte dans le forum SL & STL
    Réponses: 11
    Dernier message: 04/01/2007, 20h41
  4. question sur les listes/set/vector
    Par deubelte dans le forum SL & STL
    Réponses: 16
    Dernier message: 28/12/2006, 20h17
  5. des questions sur les listes chainées
    Par hunter99 dans le forum C
    Réponses: 13
    Dernier message: 05/12/2006, 22h51

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