Курс 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. Экспорт данных в файл.
  2. Преобразование символов с помощью map
  3. Транспонирование 2D-массива с помощью zip
  4. Присвоение и ссылки
  5. Работа с NumPy
  6. Разделение строк в Python
  7. Извлечение аудио из видео
  8. Очистка строки в Python
  9. Сортировка и обратный порядок
  10. split() — разделение строки
  11. Вывод баннеров
  12. Декораторы в Python
  13. Метод count() для списка
  14. Цикл for в Python
  15. Декораторы в Python
  16. Функция zip() в Python
  17. Создание и использование модулей в Python
  18. Работа с эмодзи в Python
  19. Обмен переменными в Jupyter
  20. Расчет времени выполнения
  21. Импорт с альтернативным именем
  22. Установка максимального количества цифр
  23. Модуль xkcd: загрузка комиксов
  24. Разделение строки на пары ключ-значение.
  25. Python enumerate() использование
  26. Профилирование данных с Pandas
  27. Функциональное программирование.
  28. Создание словарей и множеств в Python.
  29. Избегайте двойного подчеркивания
  30. Создание класса очереди
  31. Классы данных в Python
  32. Работа с файлами в Python
  33. Python enumerate() для работы с индексами
  34. Установка виртуального окружения Python
  35. Работа с аргументами командной строки в Python
  36. Сохранение Unicode в JSON
  37. Структуры данных в Python
  38. Модуль Operator в Python
  39. *args и **kwargs в Python
  40. Экранирование символов в Python
  41. Оператор += для объединения строк
  42. Удаление элементов из списка
  43. Модуль subprocess: запуск внешних команд
  44. Генераторы списков в Python

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