2017-08-03 7 views
-1

J'ai un dictionnaire dont les clés sont des chaînes et les valeurs sont des entiers. im en utilisant une boucle pour imprimer la vision ordonnée dudit dictionnaire. Mon code ressemble à ceci:Python Imprimer Les cinq premiers éléments d'un dictionnaire

for k,v in sorted(my_dict.items(), key=operator.itemgetter(1)): 
    print (k,v) 

Ce qui me donne une sortie comme ceci:

Key Value 

Comment puis-je imprimer seulement les cinq premières entrées de ce dictionnaire?

De même, est-il possible de séparer la sortie à "A: 5" au lieu de "A 5"?

Merci!

+2

'trier (my_dict.items(), key = operator.itemgetter (1)) [5] impression' ' –

+0

("{}: {}". Format (k, v))' – DyZ

+0

quelque chose de similaire a déjà été posté ici https://stackoverflow.com/questions/7971618/python-return-first-n-keyvalue-pairs-from-dict – ttallierchio

Répondre

0

Vous pouvez accéder jusqu'à un certain point sur votre

sorted(my_dict.items(), key=operator.itemgetter(1))

dictionnaire à l'aide [: n], où n est le nombre d'éléments que vous souhaitez accéder.

for k,v in sorted(my_dict.items(), key=operator.itemgetter(1))[:5]: 
    print (k,v)