7

101 игра на python. Шпаргалки. Структуры данныx python

Серия Шпаргалки

1. Списки (Lists)

  • Определение: Списки в Python – это упорядоченные, изменяемые коллекции элементов. Это значит, что ты можешь добавлять, удалять и изменять элементы в списке, и порядок элементов имеет значение.

  • Представление: Списки создаются с помощью квадратных скобок [], а элементы разделяются запятыми.

  • Особенности:

    • Могут содержать элементы разных типов данных (числа, строки, булевы значения, другие списки и т.д.).

    • Поддерживают индексацию (доступ к элементу по его позиции, начиная с 0).

    • Изменяемые (mutable).

  • Примеры:


2. Словари (Dictionaries)

  • Определение: Словари в Python – это неупорядоченные коллекции элементов, где каждый элемент состоит из пары "ключ-значение".

  • Представление: Словари создаются с помощью фигурных скобок {}, а пары "ключ-значение" разделяются двоеточием :.

    my_dict = {"name": "John", "age": 30, "city": "New York"}

  • Особенности:

    • Ключи должны быть уникальными и неизменяемыми (обычно строки или числа), а значения могут быть любого типа.

    • Доступ к значениям осуществляется по ключу.

    • Изменяемые (mutable).

    • Неупорядоченные (порядок может не сохранятся)

  • Примеры:

3. Кортежи (Tuples)

  • Определение: Кортежи в Python – это упорядоченные, неизменяемые коллекции элементов.

  • Представление: Кортежи создаются с помощью круглых скобок (), а элементы разделяются запятыми.

    my_tuple = (1, 2, 3, "apple", "banana", True)

  • Особенности:

    • Аналогичны спискам, но являются неизменяемыми (immutable), то есть нельзя изменить элементы после создания кортежа.

    • Могут содержать элементы разных типов данных.

    • Поддерживают индексацию.

    • Используются для представления неизменяемых последовательностей.

  • Примеры:

    # Создание кортежа my_tuple = (1, 2, 3, "apple", "banana") print(f"Создание кортежа: {my_tuple}") # Доступ по индексу print(f"Элемент по индексу 2: {my_tuple[2]}") # Нельзя изменить элемент # my_tuple[0] = 0 # Это вызовет ошибку: TypeError: 'tuple' object does not support item assignment # Нельзя добавить элемент # my_tuple.append(4) # Это вызовет ошибку: AttributeError: 'tuple' object has no attribute 'append' # Нельзя удалить элемент # del my_tuple[0] # Это вызовет ошибку: TypeError: 'tuple' object doesn't support item deletion

4. SimpleNamespace

  • Определение: SimpleNamespace из модуля types - это простой класс, позволяющий создавать объекты, у которых атрибуты (свойства) можно задавать как при создании, так и потом.

  • Представление: Для создания объекта SimpleNamespace нужно импортировать его из types и передать в него именованные аргументы (или не передать их):

    from types import SimpleNamespace my_namespace = SimpleNamespace(name="John", age=30, city="New York")

  • Особенности:

    • Позволяет создавать объекты с динамическими атрибутами (похоже на словарь).

    • Удобен для создания простых объектов для хранения данных.

    • Атрибуты доступны через точку, как у обычных объектов: my_namespace.name

    • В отличие от словарей, порядок атрибутов сохраняется.

    • Поля можно менять, но нельзя добавлять новые поля

  • Примеры:

    from types import SimpleNamespace # Создание SimpleNamespace my_namespace = SimpleNamespace(name="John", age=30, city="New York") print(f"Создание SimpleNamespace: {my_namespace}") # Доступ к атрибуту print(f"Атрибут 'name': {my_namespace.name}") # Изменение атрибута my_namespace.age = 31 print(f"Изменение атрибута: {my_namespace}") # Нельзя добавить новый атрибут # my_namespace.occupation = "engineer" # Это вызовет ошибку: AttributeError: 'SimpleNamespace' object has no attribute 'occupation' # Нельзя удалить атрибут # del my_namespace.age # Это вызовет ошибку: AttributeError: age # Добавление через setattr setattr(my_namespace, "occupation", "engineer") print(f"Добавление атрибута: {my_namespace}") # Удаление через delattr delattr(my_namespace, "city") print(f"Удаление атрибута: {my_namespace}")

5. Другие структуры данных в Python:

  • Множества (Sets):

    • Неупорядоченные коллекции уникальных элементов.

    • Представление: {1, 2, 3, "apple"}

    • Изменяемые.

  • Строки (Strings):

    • Последовательность символов.

    • Представление: "hello", 'world'

    • Неизменяемые (immutable).

    • Поддерживают индексацию и многие другие операции.

  • Байтовые массивы (Bytearrays):

    • Изменяемая последовательность байтов.

    • Представление: bytearray(b"hello")

    • Используются для работы с двоичными данными.

  • Диапазоны (Ranges):

    • Последовательность целых чисел.

    • Представление: range(10), range(1, 10, 2)

    • Неизменяемые.

    • Используются для генерации последовательностей.

  • Frozen sets (неизменяемые множества)

    • Неизменяемая версия множеств (sets).

    • Представление frozenset([1, 2, 3])

UPD:

КОД ПЕРЕЕХАЛ ПО ЭТОМУ АДРЕСУ

Больше постов читайте по тегу «Программирование». А если хотите изучить новую профессию, посмотрите актуальные курсы от проверенных школ с реальными отзывами на сайте Пикабу Курсы.

Правила сообщества

Публиковать могут пользователи с любым рейтингом. Однако!


Приветствуется:

• уважение к читателям и авторам

• конструктивность комментариев

• простота и информативность повествования

• тег python2 или python3, если актуально

• код публиковать в виде цитаты, либо ссылкой на специализированный сайт


Не рекомендуется:

• допускать оскорбления и провокации

• распространять вредоносное ПО

• просить решить вашу полноценную задачу за вас

• нарушать правила Пикабу

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества