Автор оригинала: Team Python Pool.
Python Iteritems И dict.items() Vs. dict.iteritems()
Что такое Python Iteritems?
Iteritems в Python-это функция, которая возвращает итератор списка словарей. Итеративные элементы представлены в виде пар кортежей (ключ, значение). Итерация словаря Python по умолчанию использует этот метод.
Что такое словарь в Python
Словари в Python являются неупорядоченными, изменяемыми и индексируемыми—написанными с фигурными скобками, имеющими пару keys: value.
Пример словаря в Python:
tdict = { , , }
Объяснение
Здесь бренд, модель и год являются ключами словаря tdict. А Honda, Pleasure и 2006-это их соответствующие ценности.
Циклы и iteritems() можно использовать для создания словаря в Python.
dict.items() Vs. dict.iteritems() в Python
Обе функции делают почти одно и то же, то есть итерацию словаря, с очень небольшой разницей между ними –
dict.items() – Эта функция возвращает копию списка словаря. Он присутствует в версии Python 3 и существует в версиях Python 2.
dict.iteritems() – Эта функция возвращает итератор списка словаря. Это функция версии python 2, которая была опущена в версиях Python 3.
Примечание: Будущая библиотека Python обеспечивает совместимость с версиями Python 2.6/2.7 и 3.x. Будущий модуль Python уже многое сделал оптимизированным способом.
Код Python 2 для демонстрации dict.iteritems():
dict ={ "Name": "Riya", "City": "Mumbai", "Country": "India" } for i in dict.iteritems(): # prints the items print(i)
Выход:
('Name', 'Riya') ('City', 'Mumbai') ('Country', 'India')
Код Python 3 для демонстрации дикт.элементов():
dict ={ "Name": "Riya", "City": "Mumbai", "Country": "India" } print("d.items() = ") for i in dict.items(): # saves as a copy print(dict.items())
Выход:
dict_items([('Name', 'Riya'), ('City', 'Mumbai'), ('Country', 'India')])
Объяснение:
Приведенные выше два кода python демонстрируют использование dict.iteritems() и dict.items() в Python2 и Python 3. dict.items() работает в python 2, но никогда не генерирует список полностью. В результате им никто не пользуется. Однако использование dict.iteritems() не создает никакого результата и вызывает ошибку.
Является ли Itertools бесконечным в Python?
Itertools, используемые для итераций, присутствующих в библиотеке python 3, – это бесконечные итераторы, такие как count (), cycle (), repeat(). Итераторы, заканчивающиеся на кратчайшей входной последовательности, такие как accumulate (), chain (), compress (), dropwhile (), filter false (), islice (), strmap () и т. Д., Каждый из Которых имеет очень уникальные отчетливые результаты. Комбинированные итераторы, представляющие модуль итератора python, – это product(), permutations(), combinations() и combination_with_replacement().
Ошибки при импорте itertools в Python
При импорте itertools в программу python возникают многочисленные ошибки, наиболее распространенной из которых является ошибка атрибута . Неправильное имя модуля или импорт неисправного модуля приводит к ошибкам атрибутов. В результате вам придется использовать технику обработки исключений и итерации при итерации длинных списков в словарях, чтобы избежать AttributeError.
- в Python 3
В Python items() отнимает много времени и истощает память. Функция items() возвращает копию, в то время как функция iteritems() занимает меньше времени и меньше памяти. Однако, поскольку items() выполняет почти ту же задачу, что и iteritems(). Последний был удален из Python 3. Теперь items() возвращает итераторы и никогда не строит список полностью в Python 3.
dict.iteritems() to dict .items() в Python 3
Если вы используете Python 3, то обычно возникает ошибка атрибута, считывающая, что “dict” не имеет атрибутов “iteritems”. Эта ошибка вызвана тем, что в python 3 функциональность dict.iteritems() была перенесена в dict.items(). Программисты должны использовать dict.items() для итерации словаря при работе в python 3. Python3 больше не имеет dict.iteritems(). Таким образом, он больше не может быть использован. dict.iterkeys() и dict.itervalues() также были удалены из Python 3. Вместо этого нужно использовать dict.keys() и dict.values() для безошибочного выполнения программы.
Оба .items() и .iteritems() в Python 2
В python 2 доступны функции .items() и .iteritems (). dict.items() скопировал все кортежи, чтобы создать новый список, который оказал огромное влияние на память. Более поздние версии python 2 создали dict.iteritems(), который возвращал только объекты итератора. Таким образом, потребляя меньше памяти и делая программы более эффективными.
Фрейм данных в Python
Фрейм данных-это двумерная структура данных со строками и столбцами потенциально различных типов. Это наиболее часто используемый объект Pandas или путем импорта значений из файла excel. Первая строка создания фрейма данных в обоих методах требует импорта панд в программу. Например – импорт панд в виде PD в первой строке и создание фрейма данных в виде.DataFrame().
DataFrame.iteritems()
DataFrame.iteritems() или DataFrame.items() выполняет итерацию по столбцам фрейма данных, т. е. Пары (имя столбца, серия) возвращают кортеж с именем столбца и содержимым в виде серии. Фреймы данных сохраняют тип данных элементов вдоль своего столбца. DataFrame.iterrows перебирает пары(индекс, ряд), получая href=”https://en.scratch-wiki.info/wiki/Index#:~:text=An%20Index%20is%20a%20numerical,key%20points%20to%20a%20value.”> индекс строки и данных строки в виде ряда. Поскольку iterrows возвращает ряд для каждой строки, он не сохраняет типы данных в строках. href=”https://en.scratch-wiki.info/wiki/Index#:~:text=An%20Index%20is%20a%20numerical,key%20points%20to%20a%20value.”> индекс строки и данных строки в виде ряда. Поскольку iterrows возвращает ряд для каждой строки, он не сохраняет типы данных в строках.
intertubes() лучше использовать для сохранения данных при итерации по строкам. Intertubes() перебирает строки как именованные кортежи, причем первым полем является индекс. А следующие поля являются значениями столбцов и, как правило, быстрее, чем итерации. Поскольку мы можем перебирать фреймы данных, такие как словарь, используя вышеприведенные функции. Фреймы данных используют пары ключ-значение для их сравнения.
Сортировка словаря с использованием итераций python()
Словари в Python несортированы, и функция iteritems() может помочь сделать это.
• Сортировка по ключу – Метод iteritems() возвращает итератор кортежей ключ-значение. Применение функции sorted() к возвращаемому значению возвращает список кортежей, отсортированных по ключу.
• Сортировка по значению – Указание функции сравнения с sorted(). Функция, получающая два кортежа для сравнения, использует cmp() для сравнения каждого второго элемента. Таким образом, сортировка по значению.
Примечание:
Python iteritems – это (Python v2. x) версия и был опущен в (Python v3. x) версия.
Надо Читать
- Введение в Python Super С примерами
- Функция справки Python
- Почему Python sys.exit лучше других функций выхода?
- Python Bitstring: Классы и другие примеры | Модуль
Вывод
В этой статье мы узнали, что такое python iteritems. Мы также узнали разницу между dict.items() и dict.iteritems(). В заключение можно сказать, что функция Dict.items() дает список кортежей. Это отнимает много времени и памяти, в то время как dict.iteritems ()-это метод итератора, который также дает кортежи. Это отнимает много времени и меньше памяти.
Если у вас все еще есть какие-либо сомнения или вопросы, дайте мне знать в разделе комментариев ниже. Я постараюсь помочь вам как можно скорее.
Счастливый Питон!