Курс 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"
- Руководство по Pymorphy2
- Проблема с изменяемыми аргументами
- Форматирование данных с помощью pprint
- Экспорт данных в файл.
- Функции map() и reduce() в Python
- Списковый компрехеншен.
- Работа с Telegram API на Python
- Работа с процессами в Python
- Метод rsub в Python: расширение функциональности вычитания
- Подписка на @SelectelNews
- Разделение строки на подстроки в Python
- Передача аргументов через **arguments
- Удаление элементов из списка в Python
- Названия столбцов в Python таблицах
- Объединение словарей в Python
- Установка и использование Telegram API в Python
- Освоение Python
- Использование *args
- Преобразование числа в восьмеричную строку
- Именованные срезы в Python
- PUT запрос для обновления данных
- Проблемы с dict в Python
- Оптимизация сравнения в Python
- Преобразование Excel в PDF с Spire.XLS
- Взаимодействие с sys
- Доступ к локальным переменным
- Работа с модулем random
- Основные операции с Numpy
- Импорт модулей в Python 3.12
- Принципы программирования
- Очистка строки в Python
- История Python
- Метод __iand__ для пользовательских классов
- Работа с необработанными строками
- Настройка нарезки списков
- Перемешивание списка с shuffle()
- Работа со строками
- Переопределение метода __lshift__
- Работа с временем в Python
- Метод Event.wait() в Python
- Создание множества в Python
- Проблемы с именами переменных
- Форматирование строк в Python
- Операции с числами в Python
- Оптимизация гиперпараметров в Python
- Конкатенация строк в Python
- Преобразование списка в словарь через генератор
- Тайное преобразование типа ключа















