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 :

ordonner un liste


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Par défaut ordonner un liste
    Bonsoir,
    je cherche une fonction permettant d'ordonner une liste d'entiers (tous differents).
    par ex:
    l=[1,3,56,0,5,78,2] ------>[0,1,2,3,5,56,78]
    merci d'avance.

  2. #2
    Membre expérimenté
    Avatar de Choupi
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 223
    Par défaut
    Bonsoir,

    C'est un peu un truc de base de python ... il faut au moins lire un tuto

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    l.sort() # trie la liste directement
    C.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Par défaut
    Bonsoir Choupi et merci pour la reponse.
    mais pour une liste de listes on fait comment ?
    l=[[3,5],[-9,7],[2,2],[5,1],[3,0]]---->[[3,0],[5,1],[2,2],[3,5],[-9,7]] (par rapport au 2eme element des sous-listes)
    Merci.

  4. #4
    Membre averti
    Enseignant
    Inscrit en
    Avril 2006
    Messages
    31
    Détails du profil
    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2006
    Messages : 31
    Par défaut
    Citation Envoyé par john491
    Bonsoir Choupi et merci pour la reponse.
    mais pour une liste de listes on fait comment ?
    l=[[3,5],[-9,7],[2,2],[5,1],[3,0]]---->[[3,0],[5,1],[2,2],[3,5],[-9,7]] (par rapport au 2eme element des sous-listes)
    Merci.
    Voilà, voilà ....


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    >>> l1=[[0, 1], [89, 1], [-45, 7896], [1258745, 4]]
    >>> l2=[]
    >>> for toto in l1[:][:] :
    ...      toto.sort()
    ...      l2.append(toto)
    ...      print l2
    ...
    [[0, 1]]
    [[0, 1], [1, 89]]
    [[0, 1], [1, 89], [-45, 7896]]
    [[0, 1], [1, 89], [-45, 7896], [4, 1258745]]
    >>> print l2
    [[-45, 7896], [0, 1], [1, 89], [4, 1258745]]
    En espérant que ça te convienne .

    a+

  5. #5
    Membre éclairé
    Avatar de airod
    Homme Profil pro
    Gérant Associé, DMP Santé et Directeur technique
    Inscrit en
    Août 2004
    Messages
    767
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Gérant Associé, DMP Santé et Directeur technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 767
    Par défaut
    je ne connais pas les [:][:] dans
    for toto in l1[:][:] :

    une petite explication serait la bien venue.

    merci.

  6. #6
    Membre averti
    Enseignant
    Inscrit en
    Avril 2006
    Messages
    31
    Détails du profil
    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2006
    Messages : 31
    Par défaut
    Citation Envoyé par airod
    je ne connais pas les [:][:] dans
    for toto in l1[:][:] :

    une petite explication serait la bien venue.

    merci.
    Ca veut dire que tu parcours la liste principale et les sous-listes dans leur totalité ; c'est en quelque sorte un parcours (ici avec la boucle : ... for toto in l1[:][:] : ...) sur 2 niveaux ... et tu as accès à tous les éléments individuellement (ceux de la liste et ceux de la sous-liste) .

    Mais je m'aperçois que dans cet exemple bien précis, ça ne change pas grand chose de mettre l1[:][:] ou tout simplement l1 (à part le l2.sort() en plus après être sorti de la boucle) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    >>> l1, l2=[[0, 1], [89, 1], [-45, 7896], [1258745, 4]], []
    >>> for toto in l1 :
    ...     toto.sort()
    ...     l2.append(toto)
    ...     print l2
    ...
    [[0, 1]]
    [[0, 1], [1, 89]]
    [[0, 1], [1, 89], [-45, 7896]]
    [[0, 1], [1, 89], [-45, 7896], [4, 1258745]]
    >>> l2
    [[0, 1], [1, 89], [-45, 7896], [4, 1258745]]
    >>> l2.sort()
    >>> l2
    [[-45, 7896], [0, 1], [1, 89], [4, 1258745]]
    a+

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

Discussions similaires

  1. [EX-XP] Ordonner une liste d'information
    Par viavba dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 03/03/2009, 15h26
  2. Réponses: 2
    Dernier message: 17/06/2008, 23h18
  3. Réponses: 2
    Dernier message: 05/06/2008, 17h19
  4. Ensemble ordonné et liste de successeur
    Par phuongthao dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 29/01/2008, 22h55
  5. Ordonner une liste
    Par Zimzimut dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 31/05/2007, 08h26

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