Курс 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. Генерация строк с .join()
  3. Python enumerate() функции
  4. Замена текста в Python
  5. Заказ карты Тинькофф Black
  6. Метод title() в Python
  7. Цикл for с enumerate() в Python
  8. Итерации в Python
  9. Библиотека funcy: удобные утилиты
  10. Чтение и запись TOML-конфигов
  11. Установка и использование библиотеки google
  12. Копирование объектов в Python
  13. Проблемы с именами переменных
  14. Использование defaultdict в Python
  15. Функции в Python
  16. Добавление элементов в список: append() vs extend()
  17. Работа с кортежами в Python
  18. Очистка вывода в Python
  19. Работа со строками в Python
  20. Расчет времени выполнения
  21. Проверка класса объекта
  22. Преобразование числа в восьмеричную строку
  23. Работа с YAML в Python
  24. Работа с географическими данными.
  25. Операции с датами в Python
  26. Создание списков в Python
  27. Отладка кода
  28. Оператор обр. импликации
  29. Перегрузка операторов в Python
  30. Списковый компрехеншен.
  31. Декоратор @override
  32. Вычисление времени выполнения
  33. Функция divmod() в Python
  34. Работа со словарями Python
  35. Функция all() в Python
  36. Структура строк в Python
  37. Обработка исключений в Python
  38. Операторы увеличения и уменьшения в Python
  39. Python и Монти Пайтон
  40. Многострочные комментарии в Python
  41. Генератор бросков кубиков
  42. Принципы LSP и ISP в Python
  43. Копирование объектов в Python
  44. Разность множеств
  45. Функция enumerate() в Python
  46. Проверка ввода с помощью isdigit

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