Курс 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. Анонимные функции в Python
  2. Операторы увеличения и уменьшения в Python
  3. Отрицательные индексы списков
  4. Использование эмодзи в Python
  5. Отношения подклассов в Python
  6. Инвертирование словаря
  7. Обработка исключений
  8. Модуль future Python
  9. Блок else в циклах.
  10. Измерение времени выполнения кода
  11. Обновление множества в Python
  12. Namedtuple в Python
  13. Руководство по использованию Colorama
  14. Работа с модулем random
  15. Создание тестовых данных с Faker
  16. Обход элементов в Python
  17. Работа с множествами в Python
  18. Создание OrderedDict
  19. Конкатенация строк в Python
  20. Python: библиотеки и функции
  21. Переименование файлов в Python
  22. Хеширование паролей с использованием salt
  23. Анонимные функции в Python
  24. Удаление элементов во время итерации
  25. Инверсия списка и строки в Python
  26. Списковое включение в Python
  27. Функция all() в Python
  28. Combobox в Tkinter
  29. Манипуляция формой массива в Numpy
  30. Python reversed() функция
  31. Метод сравнения объектов в Python
  32. Подсчет элементов с помощью Counter
  33. Проверка строки на палиндром
  34. Работа с временем в Python
  35. Метод join() для объединения строк
  36. Оператор continue в Python
  37. Оптимизация памяти с __slots__
  38. Названия переменных
  39. Проверка окончания строки с помощью str.endswith()
  40. Извлечение аудио из видео
  41. Проверка вхождения подстроки
  42. История Python
  43. Создание пользовательской коллекции в Python
  44. Enum в Python

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