Что такое функция items в Python?
items() — это метод словарей в Python (узнать, почему это метод, а не функция можно из этого урока курса «Основы Python»). Он возвращает итерируемый объект (особый DictView объект), позволяющий получить пары «ключ-значение» словаря.
Пример:
dict_example = "a": 1, "b": 2> for k, v in dict_example.items(): print(k, " ">, v) # => a = 1 # => b = 2
dict.items
Порядок элементов. В версиях до +py.3.6 ключи и значения хранятся в словарях в произвольном (но не случайном) порядке, зависящем от реализации Питона. Если требуется обход элементов в порядке их добавления, следует использовать collections.OrderedDict() . Начиная с +py.3.6, порядок соответствует порядку вставки элементов.
Python 3
Для обхода элементов создаётся представление элементов словаря, по сути являющееся генератором. Копия данных не создаётся.
my_dict =
my_dict.items() # dict_items([('a', 1), ('b', 2), ('c', 3)])
my_dict.items()[1] # 'dict_items' object does not support indexing
list(my_dict.items())[0] # ('a', 1)
Python 2
Для обхода элементов создаётся копия данных словаря.
my_dict =
my_dict.items() # [('a', 1), ('c', 3), ('b', 2)]
my_dict.items()[0] # ('a', 1)
Различия между dict.items() и dict.iteritems() в Python 2
В Python 2, при работе со словарями (dict), часто возникает необходимость обращаться к парам ключ-значение. Для этого существуют два метода: dict.items() и dict.iteritems().
Алексей Кодов
Автор статьи
7 июля 2023 в 18:21
В Python 2, при работе со словарями ( dict ), часто возникает необходимость обращаться к парам ключ-значение. Для этого существуют два метода: dict.items() и dict.iteritems() .
Вот простой пример использования этих методов:
dictionary = for key, value in dictionary.items(): print(key, value) for key, value in dictionary.iteritems(): print(key, value)
В обоих случаях результатом будет вывод пар ключ-значение словаря. В чем же разница?
dict.items() возвращает копию списка пар ключ-значение словаря. Это означает, что при работе с большими словарями этот метод может занять значительное количество памяти, так как он создает полную копию всех элементов словаря.
dictionary = items = dictionary.items() print(items) # [(1, 'a'), (2, 'b'), (3, 'c')]
dict.iteritems(), в отличие от предыдущего метода, возвращает итератор — объект, который позволяет по очереди проходить элементы коллекции, не загружая их все в память сразу. Это делает dict.iteritems() более эффективным при работе с большими словарями.
dictionary = iteritems = dictionary.iteritems() print(iteritems) # <dictionary-itemiterator object at 0x7f315cddc850>
Важно упомянуть, что в Python 3 метод dict.iteritems() был удален, а dict.items() теперь возвращает итератор, а не список, что делает его таким же эффективным, как и dict.iteritems() в Python 2.
Что такое item?
Почитываю буржуйскую документацию и тут и там встречается некая боевая единица, скрывающаяся под именем item. Эта единица вообще переводится на понятный русский язык? Есть у нас такое слово? Я и так и сяк пытаюсь прикинуть ее значение/перевод, но суть от меня ускользает.
Иногда, на радио или в видео, встречаются люди, которые говорят на дичайшем замесе русского и английского: загрузили айтемы (грузовик они загрузили), блэкаут (авария у них) и прочая ересь. Я понимаю, в русском языке много заимствований, но объясните пожалуйста толкование этого слова.
- Вопрос задан более трёх лет назад
- 1446 просмотров
Комментировать
Решения вопроса 1
Семантически вернее всего, наверное, будет «штука».
Это одна штука неважно чего из множества таких же штук.
А вот если эта штука действительно стала самостоятельной боевой единицей — тогда она уже не item, а unit 🙂