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

Exercices Python Discussion :

[Nouveau] Problème avec listes


Sujet :

Exercices Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 4
    Par défaut [Nouveau] Problème avec listes
    Bonjour à tous !
    Je viens vers vous aujourd'hui car j'ai un petit problème avec Python.
    En effet, je souhaite créer une liste telle que pour chaque élément e de L = [3, 2, 3, 1, 2, 0, 9, 9, 9, 2, 3] créer un couple [e, [a,
    b, c, ….]] où [a, b, c, …] correspond aux positions de e dans la liste L.
    J'aimerais avoir comme retour, une liste R telle que R = [[3, [0, 2, 10]], [2, [1, 4, 9]], [1, [3]], [0, [5]], [9, [6, 7, 8]]]

    Pouvez-vous m'aider ?
    Merci.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    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 743
    Par défaut
    Salut,

    Citation Envoyé par FroZ_ Voir le message
    Pouvez-vous m'aider ?
    Avec Python, on préférera construire un dictionnaire où les clefs sont les différentes valeurs de la liste et les valeurs la liste des indices où ils apparaissent quitte à balayer ensuite le dictionnaire pour le mettre sous forme d'une liste.

    Si vous voulez construire directement la liste R, pour chaque (i, v) i.e. position, valeur de la liste L, trouver si une sous liste commençant par v existe, si c'est le cas, ajouter i au deuxième élément de la sous liste sinon ajouter la sous liste [ v, [i ] ] à R.

    Laborieux et bon exercice sur les listes... mais sans difficulté particulière: qu'est ce qui vous bloque?

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

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 4
    Par défaut
    Bonjour et d'abord, merci pour votre réponse.

    Ce qui me bloque, c'est surtout de renvoyer le bon résultat sous la forme [e,[a,b,c], ...].
    Concernant le reste, j'ai commencé par faire deux boucles afin de parcourir la liste et de append à une liste vide quand les valeurs sont égales.

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    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 743
    Par défaut
    Citation Envoyé par FroZ_ Voir le message
    Ce qui me bloque, c'est surtout de renvoyer le bon résultat sous la forme [e,[a,b,c], ...].
    Vous ne pouvez renvoyer que ce que vous aurez construit... et avoir de l'aide que si vous montrez ce que vous avez essayé de faire.

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

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 4
    Par défaut
    J'ai commencé à trouver des idées afin de réaliser cela.
    J'ai donc schématisé le tout et je suis arrivé à la conclusion de créer 2 fonctions.
    La première, servant à récupérer les positions dans la liste des différentes valeurs et une deuxième ayant pour but de prendre les positions obtenues et les fusionner avec les éléments correspondants.
    Ce qui me donne à peu près pour l'instant deux fonctions telles que :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    def collect_positions(element):
        positions = an empty list
        for position, item in enumerate(L):
            does element equal item? if so,
                append position to positions
            (otherwise do nothing)
        return positions
     
    def collect_all_positions():
        all_positions = an empty list
        for element in L:
            result = collect_positions(element)
            append (position, result) to all_positions
        return all_positions
    Désolé si j'annote tout en anglais mais c'est plus facile pour moi dans mon organisation. Bien évidemment ce n'est pas écrit en python mais l'idée est là.

    Merci beaucoup pour votre aide.

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    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 743
    Par défaut
    Salut,

    Citation Envoyé par FroZ_ Voir le message
    Désolé si j'annote tout en anglais mais c'est plus facile pour moi dans mon organisation. Bien évidemment ce n'est pas écrit en python mais l'idée est là.
    C'est une idée d'algo. mais si vous voulez savoir si çà vole, il faut essayer de le coder.

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

Discussions similaires

  1. Nouveau problème avec une liste
    Par Sour0013 dans le forum IHM
    Réponses: 11
    Dernier message: 24/07/2007, 08h34
  2. Réponses: 20
    Dernier message: 22/03/2006, 14h00
  3. nouveau problème avec le separator
    Par boudou dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 21/02/2006, 14h25
  4. Problème avec liste déroulante
    Par Invité dans le forum IHM
    Réponses: 2
    Dernier message: 14/12/2005, 21h04
  5. Problème avec listes liées entre elles et bouton "précé
    Par Oluha dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/08/2005, 15h10

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