Курс 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"
- Операции с кортежами
- Очистка данных с Pandas
- Работа с набором данных CIFAR10 в PyTorch
- Анализ кода — Python
- Справка по импортированным модулям
- Генераторные выражения и islice.
- Оператор «not» в Python
- Ускорение кода с помощью векторизации
- Функции в одну строку
- Оптимизация интернирования строк
- JMESPath в Python
- Операции с комплексными числами
- Переопределение оператора % для объектов
- Функция reversed() в Python
- Непрерывная проверка в Python
- Поиск повторов в списке
- Создание словарей и множеств в Python
- Проверка кортежей.
- Обновление данных через PUT запрос
- Возведение в квадрат с помощью itertools
- Приоритет операций в Python
- Определение наиболее частого элемента с помощью collections.Counter
- Декоратор Property в Python
- Импорт классов из другого файла
- Комментарии в Python
- Python Поверхностное Копирование
- Умножение строк и списков
- Атрибуты класса и экземпляра
- Переменная с нижним подчеркиванием
- Метод __ixor__ для побитового исключающего ИЛИ
- Оператор распаковки в Python
- Сравнение неупорядоченных списков
- JSON в Python: модуль, dump, dumps, load
- Роль ключевого слова self
- Метод join() для объединения элементов в строку.
- Декораторы в Python
- Распаковка аргументов в Python
- Функция map() в Python
- Преобразование текста в речь с Python
- Конвертация коллекций в Python
- Генерация UUID в Python
- Генерация случайных чисел в Python
- Обработка исключений в Python
- Получение списка кортежей из словаря
- Именованные кортежи в Python
- Создание именованных кортежей в Python
- Фильтрация списка чисел
- Экспорт функций в Python















