Курс Python → Namedtuple в Python

Namedtuple в Python — это удобная структура данных, которая похожа на обычный кортеж, но позволяет обращаться к элементам по их именам, а не только по индексам. Основное преимущество использования namedtuple вместо обычного словаря заключается в экономии памяти. При создании больших данных именованные кортежи оказываются более эффективными, так как они занимают меньше места в памяти.

Когда мы создаем namedtuple, мы указываем ее структуру, то есть имена полей, которые будут содержаться в кортеже. Это позволяет нам обращаться к этим полям по их именам, что делает код более читаемым и понятным. При этом размер namedtuple оказывается значительно меньше, чем у эквивалентного словаря. Например, если сравнить размер namedtuple и словаря, можно увидеть, что namedtuple занимает 64 байта, в то время как словарь занимает 240 байт, что в 4 раза больше.

from collections import namedtuple

# Создаем именованный кортеж с полями 'name' и 'age'
Person = namedtuple('Person', ['name', 'age'])

# Создаем экземпляр именованного кортежа
person = Person(name='Alice', age=30)

# Обращаемся к полям по их именам
print(person.name)
print(person.age)

В приведенном примере мы создаем именованный кортеж Person с полями ‘name’ и ‘age’, затем создаем экземпляр этого кортежа и обращаемся к полям по их именам. Использование namedtuple делает код более понятным и удобным, а экономия памяти делает его эффективным при работе с большими данными. Поэтому, если вам нужно создать структуру данных, которая будет содержать фиксированное количество полей, namedtuple может стать отличным выбором.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Установка и использование pyshorteners
  2. Сериализация и десериализация объектов
  3. Обработка элементов в Python
  4. Поиск частого элемента
  5. Работа с YAML в Python: PyYAML.
  6. Активация Matplotlib в Jupyter
  7. Функции высшего порядка в Python
  8. Иерархия классов в Python
  9. Работа со списками
  10. Создание лямбда-функций
  11. Поток данных в Python
  12. Добавление вложенных списков
  13. Хэш-функции и метод цепочек
  14. Метод difference_update() — разность множеств
  15. Добавление элемента к кортежу
  16. Создание новых списков в Python
  17. Удаление дубликатов из списка с помощью dict.fromkeys
  18. Сортировка с помощью key
  19. Хеширование паролей с использованием salt
  20. Парсинг статей с Newspaper3k
  21. Изменение списка срезами
  22. Декораторы с аргументами
  23. Декораторы в Python
  24. Непрерывная проверка в Python
  25. Создание циклической ссылки
  26. Декораторы в Python
  27. Поиск с библиотекой Google
  28. Измерение времени выполнения кода в Python
  29. Сериализация данных в JSON с помощью json.dumps
  30. Функция all() в Python
  31. Метод __iand__ для пользовательских классов
  32. Работа с байтовыми строками в Python
  33. Область видимости переменных
  34. Создание списка дат
  35. Заказ карты Тинькофф Black
  36. Делегирование в Python
  37. Мониторинг памяти с Pympler
  38. Применение функции map() с лямбда-функциями
  39. Установка и использование howdoi
  40. Обработка ошибок в Python
  41. Проверка дубликатов в Python
  42. Измерение времени выполнения кода
  43. Метод enumerate() в Python
  44. Работа с YAML в Python
  45. EMOT преобразование эмодзи в текст
  46. Создание словарей с defaultdict
  47. Декораторы классов

Marketello читают маркетологи из крутых компаний