Различия между dict.items() и dict.iteritems() в Python 2

Перейти в телеграм, чтобы получить результаты теста
Пройдите тест, узнайте какой профессии подходите
Вам подходит профессия:
Аналитик данных
Основные характеристики профессии:
не нужно общаться с людьми
логика
анализ
поиск закономерностей
работа с числами
Построим личный план перехода в профессию для вас бесплатно
- убедитесь, подходит вам профессия или нет
- получите оценку своих навыков и шансов освоить профессию
- забронируем за вами скидку 55% на обучение, пока думаете
Позвоним вам в течение часа — не пропустите звонок
Чем занимается специалист
Специалист создает все онлайн-продукты, программы, приложения, игры и сайты, которыми вы пользуетесь каждый день.
Создает — значит описывает последовательность действий на специальном языке программирования. Настраивает действия, что должно произойти, если пользователь нажмет на кнопку.
Средняя зарплата начинающего специалиста в первый год работы:
от 50 000 ₽
Что надо знать и уметь, чтобы выучиться на аналитика:
- базовое школьное образование
- уверенные навыки работы с компьютером
- опыт выполнения задач в конкретные сроки
Глубокие знания математики или английского не нужны
Почему мы рекомендуем вам эту профессию
Ваш скрытый талант:
наблюдательность
В Python 2, при работе со словарями (dict), часто возникает необходимость обращаться к парам ключ-значение. Для этого существуют два метода: dict.items() и dict.iteritems().
В Python 2, при работе со словарями (dict
), часто возникает необходимость обращаться к парам ключ-значение. Для этого существуют два метода: dict.items()
и dict.iteritems()
.
Вот простой пример использования этих методов:
dictionary = {1: 'a', 2: 'b', 3: 'c'}
for key, value in dictionary.items():
print(key, value)
for key, value in dictionary.iteritems():
print(key, value)
В обоих случаях результатом будет вывод пар ключ-значение словаря. В чем же разница?
dict.items() возвращает копию списка пар ключ-значение словаря. Это означает, что при работе с большими словарями этот метод может занять значительное количество памяти, так как он создает полную копию всех элементов словаря.
dictionary = {1: 'a', 2: 'b', 3: 'c'}
items = dictionary.items()
print(items) # [(1, 'a'), (2, 'b'), (3, 'c')]
dict.iteritems(), в отличие от предыдущего метода, возвращает итератор — объект, который позволяет по очереди проходить элементы коллекции, не загружая их все в память сразу. Это делает dict.iteritems()
более эффективным при работе с большими словарями.
dictionary = {1: 'a', 2: 'b', 3: 'c'}
iteritems = dictionary.iteritems()
print(iteritems) # <dictionary-itemiterator object at 0x7f315cddc850>
Важно упомянуть, что в Python 3 метод dict.iteritems()
был удален, а dict.items()
теперь возвращает итератор, а не список, что делает его таким же эффективным, как и dict.iteritems()
в Python 2.
Добавить комментарий