SOS : besoin d'aide pour mon code

Résolu
okchf Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
okchf Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -

bonsoir s'il vous plait je bloque sur ca:

Écrire une fonction valeurs(dico) qui doit fournir, à partir du dictionnaire donné en paramètre, une liste des valeurs du dictionnaire triées selon leur clé.

mon code envoie ca : ['un']['trois']['deux']

alors que le resultat attendu est : 

 
['un', 'trois', 'deux']

est ce que vous pouvez m'aider

et voila mon code en essayant sur pycharm:

 
d = {'three': 'trois', 'two': 'deux', 'one': 'un'}
keys = d.keys()
sorted_d = sorted(keys)
for key in sorted_d:
    c = d[key]
    print([c],end="")

3 réponses

  1. jee pee Messages postés 31977 Date d'inscription   Statut Modérateur Dernière intervention   10 012
     

    Bonjour,

    Il faut créer une liste, pas essayer de générer le résultat avec des print enchainés

    d = {'three': 'trois', 'two': 'deux', 'one': 'un'}
    keys = sorted(d.keys())
    c=[]
    for key in keys:
        c.append(d[key])
    print(c)

    et il te faut faire une fonction de ce code


    1
  2. PierrotLeFou
     

    Si tu remarques, le résultat attendu est trié en ordre alphabétique des clés.
    one, three, two
    Mais on te demande de retourner les valeurs et non les clés.
    Est-ce qu'il existe autre chose que les dictionnaires qui contiendrait les deux?
    Et que tu pourrait trier suivant les clés et dont tu pourrait extraire les valeurs?
    Que fait la méthode dict.items() ?

    0
  3. okchf Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
     

    merciii enormement pour votre aide !!!

    0