Язык программирования Python

Как выполнить итерацию только по первым n элементам большого словаря в python?

Пример того, как выполнить итерацию только по первым n элементам для большого словаря в python?

Создание словаря

Предположим, у нас есть очень большой словарь в python:

import random d = {} for i in range(1000000): d[i] = random.randint(1,10)
Code language: JavaScript (javascript)

Наша задача вывести только первые n элементов.

Итерация только по первым n элементам

Одним из решений является использование islice:

import random from itertools import islice d = {} for i in range(1000000): d[i] = random.randint(1,10) for item in islice(d.items(), 5): print('Key:{} Value:{}'.format(item[0], item[1]))
Code language: JavaScript (javascript)

В результате мы получим:

Key:0 Value:9 Key:1 Value:10 Key:2 Value:10 Key:3 Value:4 Key:4 Value:8
Code language: CSS (css)

Примечание. islice можно использовать для разбиения любой части словаря:islice(dict, start, end):

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

Данный код выведет следующее:

Key:10 Value:4 Key:11 Value:7 Key:12 Value:10 Key:13 Value:9 Key:14 Value:4
Code language: CSS (css)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *