Добавить в корзинуПозвонить
Найти в Дзене
Креативный дизайн

Путеводитель по типам и структурам данных в Python

Python — это мощный язык программирования, который, благодаря своей гибкости и простоте в использовании, завоевал доверие разработчиков по всему миру. Одной из его ключевых особенностей является система типов и структур данных. Мы рассмотрим различные типы данных в Python, разбираясь в их изменяемости, и предложим полезные примеры задач. Python отличается от многих других языков тем, что в нем нет примитивных типов данных. Всё в Python является объектом. Эти объекты классифицируются на изменяемые и неизменяемые. Целочисленное значение, например, является неизменяемым объектом. А вот список, наоборот, является изменяемым объектом, то есть мы можем добавлять и удалять из него элементы. Сам объект при этом остаётся в памяти и мы изменяем этот объект. В Python часто называют изменённый объект - мутированным объектом, то есть изменённым. От английского Mutable object. Неизменяемый объект — Immutable object. И такие объекты изменять нельзя. Основные типы изменяемых объектов: список — list (с
Оглавление

Python — это мощный язык программирования, который, благодаря своей гибкости и простоте в использовании, завоевал доверие разработчиков по всему миру. Одной из его ключевых особенностей является система типов и структур данных. Мы рассмотрим различные типы данных в Python, разбираясь в их изменяемости, и предложим полезные примеры задач.

Введение в типы данных в Python

Python отличается от многих других языков тем, что в нем нет примитивных типов данных. Всё в Python является объектом. Эти объекты классифицируются на изменяемые и неизменяемые.

Целочисленное значение, например, является неизменяемым объектом.

А вот список, наоборот, является изменяемым объектом, то есть мы можем добавлять и удалять из него элементы. Сам объект при этом остаётся в памяти и мы изменяем этот объект.

В Python часто называют изменённый объект - мутированным объектом, то есть изменённым. От английского Mutable object.

Неизменяемый объект — Immutable object. И такие объекты изменять нельзя.

Изменяемость объектов

  • Изменяемые (Mutable) объекты — это объекты, которые могут быть изменены после их создания. Классическим примером является список (list), который позволяет добавлять, удалять и изменять элементы. Также к изменяемым объектам относятся словари (dict), множества (set) и объекты пользовательских классов.

Основные типы изменяемых объектов: список — list (соответствующий класс — list), словарь — dictionary (соответствующий класс — dict), набор — set (соответствующий класс — set), экземпляры наших классов (пользовательские классы) — user-defined classes.

  • Неизменяемые (Immutable) объекты — это объекты, которые не могут быть изменены после их создания. Такие объекты, как строки (str), целые числа (int), числа с плавающей запятой (float), кортежи (tuple) и логические значения (bool), являются неизменяемыми. Даже если кажется, что мы изменяем значение, на самом деле создается новый объект.

Основные типы неизменяемых объектов: строки — string (соответствующий класс — str), логический boolean (соответствующий класс — bool), целое число — integer (соответствующий класс — int), число с десятичной точкой — float, кортеж — tuple (соответствующий класс — tuple), ничто — Non (соответствующий класс — NoneType).

Краткий обзор основных типов данных

Изменяемые типы

  • Список (list)

fruits = ['apple', 'banana', 'cherry']
fruits.append('orange') # добавляет 'orange' в конец списка

Объект fruits остаётся в памяти, только его содержимое меняется.

Рекомендации: Чтобы повысить эффективность, избегайте частого добавления и удаления элементов из середины списка, используйте коллекции deque для таких операций.

  • Словарь (dict)

student = {'name': 'John', 'age': 25}
student['age'] = 26 # обновляет возраст на 26

Словарь позволяет работать с парами ключ-значение, которые можно изменять или удалять по ключу.

Рекомендации: При необходимости инициализации словаря с определенными значениями помните про метод dict.fromkeys().

Неизменяемые типы

  • Кортеж (tuple)

dimensions = (200, 50) # неизменяемый набор значений

Кортежи полезны, когда необходимо передавать неизменяемые наборы данных.

Рекомендации: Используйте кортежи для возврата нескольких значений из функции.

  • Строка (str)

greeting = "Hello, World!"
upper_greeting = greeting.upper() # создаёт новую строку "HELLO, WORLD!"

Все операции со строками создают новые строки.

Рекомендации: Для сложных операций объединения строк используйте метод str.join() для повышения производительности.

Заключение

Работа с типами данных в Python требует понимания свойств изменяемости и неизменяемости объектов. Изучив эти основы, разработчик может добиться более эффективного использования памяти и повышения производительности программ. Не забывайте применять соответствующие типы данных в зависимости от их характеристик — это позволит вам писать красивый и эффективный код.

Позаботьтесь о том, чтобы ваш код был понятным и поддерживаемым, делайте акцент на правиле «Явное лучше, чем неявное» из Дзен Python, и это поможет вам донести суть ваших решений до пользователя.

Полезные ресурсы:

Креативный дизайн | Дзен

Сообщество дизайнеров в VK

https://vk.com/grafantonkozlov

Телеграмм канал сообщества

https://t.me/grafantonkozlov

Архив эксклюзивного контента

https://boosty.to/antonkzv

Канал на Дзен

https://dzen.ru/grafantonkozlov

---------------------------------------

Бесплатный Хостинг и доменное имя

https://tilda.cc/?r=4159746

Мощная и надежная нейронная сеть Gerwin AI

https://t.me/GerwinPromoBot?start=referrer_3CKSERJX

GPTs — плагины и ассистенты для ChatGPT на русском языке

https://gptunnel.ru/?ref=Anton

---------------------------------------

Донат для автора блога

dzen.ru/grafantonkozlov?donate=true