pingouinux a écritpseudofab #14 a écritSi toutes les clefs 's' sont présentes, tu peux faire simplement:
listeCopie.sort(key=lambda d:d['s'] )
Non, c'est une erreur de syntaxe, et le
else est obligatoire. L'erreur apparaît avant même de lire la liste.
>>> liste = [{'n':'berthelot','p':'stephane','s':2500},
{'n':'sarkosy','p':'nicolas','s':7000},
{'n':'etchebest','p':'phillipe','s':1250},
{'n':'rigolo','p':'phillipe','s':4530},
{'n':'berthelot','p':'jackie','s':2200},
{'n':'jambon','p':'steve','s':5000},
{'n':'jambon','p':'steven','s':1670}
]
>>> liste.sort(key=lambda d:d['s'] )
>>> liste
[{'n': 'etchebest', 'p': 'phillipe', 's': 1250}, {'n': 'jambon', 'p': 'steven', 's': 1670}, {'n': 'berthelot', 'p': 'jackie', 's': 2200}, {'n': 'berthelot', 'p': 'stephane', 's': 2500}, {'n': 'rigolo', 'p': 'phillipe', 's': 4530}, {'n': 'jambon', 'p': 'steve', 's': 5000}, {'n': 'sarkosy', 'p': 'nicolas', 's': 7000}]
>>>