Comment itérer uniquement sur les n premiers éléments d'un très grand dictionnaire en python ?

Published: 29 mars 2021

Tags: Python; Dictionnaire;

DMCA.com Protection Status

Exemple de comment itérer uniquement sur les n premiers éléments d'un très grand dictionnaire en python?

Créer un dictionnaire

Supposons que nous ayons un très grand dictionnaire en python:

d = {}

for i in range(1000000):
    d[i] = random.randint(1,10)

et que nous voulons imprimer uniquement les n premiers éléments.

Itérer uniquement sur les n premiers éléments

Une solution est alors d'utiliser islice,

from itertools import islice

for item in islice(d.items(), 5):
    print('Key:{} Value:{}'.format(item[0], item[1]))

donne

Key:0 Value:1
Key:1 Value:7
Key:2 Value:10
Key:3 Value:7
Key:4 Value:8

Note: islice peut être utilisé pour découper n'importe quelle partie du dictionnaire islice(dict,start, end):

from itertools import islice

for item in islice(d.items(), 10,15):
    print('Key:{} Value:{}'.format(item[0], item[1]))

donne

Key:10 Value:3
Key:11 Value:1
Key:12 Value:4
Key:13 Value:8
Key:14 Value:10

Références