Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Битва Героев: RPG - увлекательная игра в жанре РПГ.

Битва Героев: RPG

Приключения, Фэнтези

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • Animalrescueed Animalrescueed 36 постов
  • Oskanov Oskanov 7 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
6
TECHLiveHACK
TECHLiveHACK
1 месяц назад

Все шпаргалки в одном месте⁠⁠

Все шпаргалки в одном месте Технологии, Telegram (ссылка), Программа, Гайд, Python, Шпаргалка, Программирование, IT, Полезное, Помощь, Компьютер, Приложение, Windows, Linux

Обширная коллекция шпаргалок по различным языкам программирования и библиотекам. Сгруппированы по алфавиту. В наличие даже PDF-файлы шпаргалок. Отличный ресурс для быстрого поиска нужной информации.

Сохраняем ссылку.

Источник

Технологии Telegram (ссылка) Программа Гайд Python Шпаргалка Программирование IT Полезное Помощь Компьютер Приложение Windows Linux
1
8
hypo69
hypo69
7 месяцев назад
Программирование на python
Серия Шпаргалки

101 игра на python. Шпаргалки. Списковые включения (list comprehensions)⁠⁠

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Что такое списковое включение?

В самом простом виде, списковое включение – это компактный способ создания нового списка на основе уже существующего (или любого итерируемого объекта). Вместо того, чтобы использовать традиционный цикл for и добавлять элементы в список по одному, ты можешь сделать это в одну строку кода.

  • Краткость: Они позволяют писать меньше кода.

  • Читаемость: Когда ты привыкнешь к их синтаксису, ты будешь находить их более легкими для понимания, чем эквивалентные циклы for.

  • Производительность: В некоторых случаях списковые включения могут быть быстрее, чем циклы for.

Вот базовый синтаксис спискового включения:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост
  • expression: Выражение, которое определяет, как будет вычисляться каждый элемент нового списка. Это может быть что угодно: простое значение, математическая операция, вызов функции.

  • item: Переменная, которая принимает значение каждого элемента из iterable по очереди.

  • iterable: Итерируемый объект, например, список, кортеж, строка или результат работы range().

Пример:

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

Без спискового включения:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Со списковым включением:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Списковое включение делает код короче и понятнее!

Добавление условия

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

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост
  • condition: условие, которое должно выполняться для включения элемента в новый список.

Пример:

Создадим список квадратов только четных чисел из нашего исходного списка numbers.

Без спискового включения:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Со списковым включением:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Я добавил if number % 2 == 0 в списковое включение, чтобы отфильтровать только четные числа.

Многострочные списковые включения

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

Пример:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Это делает код более понятным, особенно когда у тебя есть длинные условия или сложные выражения.


Упражнения


Упражнение 1: Преобразование температур

У тебя есть список температур в градусах Цельсия, и тебе нужно преобразовать их в градусы Фаренгейта. Формула для преобразования: F = (C * 9/5) + 32.

Вот твой список температур в Цельсиях:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Задача:

  1. Используя списковое включение, создай новый список fahrenheit_temperatures, содержащий температуры из celsius_temperatures, преобразованные в градусы Фаренгейта.

  2. Выведи полученный список fahrenheit_temperatures на экран.

Подсказка:

  • Используй формулу (celsius * 9/5) + 32 в качестве выражения в списковом включении.

  • Подумай, что является iterable, а что item в данном случае.


Мое решение:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Разбор кода:

  1. celsius_temperatures = [0, 10, 20, 30, 40]: Это исходный список с температурами в градусах Цельсия.

  2. fahrenheit_temperatures = [...]: Здесь мы создаем новый список с помощью спискового включения.

  3. (celsius * 9/5) + 32: Это выражение, которое выполняется для каждого элемента. Оно преобразует температуру из Цельсия в Фаренгейт.

  4. for celsius in celsius_temperatures: Это часть спискового включения, которая перебирает каждый элемент в списке celsius_temperatures, присваивая его значение переменной celsius на каждой итерации.

  5. print(fahrenheit_temperatures): Выводит полученный список температур в Фаренгейтах.

Важно отметить:

  • В данном случае, celsius_temperatures является iterable, а celsius — item.

  • Я использую многострочное форматирование спискового включения для повышения читаемости кода.

  • Внутри выражения я напрямую применяю формулу преобразования, используя текущее значение celsius.


Упражнение 2: Фильтрация и преобразование строк

У тебя есть список слов, и тебе нужно сделать следующее:

  1. Отфильтровать слова, которые начинаются с буквы "a" (регистр не важен).

  2. Преобразовать все оставшиеся слова в верхний регистр.

Вот твой список слов:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Задача:

  1. Используя списковое включение, создай новый список transformed_words, содержащий только те слова из списка words, которые не начинаются с буквы "a" (или "A"), и при этом преобразованные в верхний регистр.

  2. Выведи полученный список transformed_words на экран.

Подсказки:

  • Используй метод строки startswith() для проверки, начинается ли слово с определенной буквы. Не забудь про регистр! Приведи все к нижнему регистру.

  • Используй метод строки upper() для преобразования строки в верхний регистр.

  • Подумай о порядке операций. Сначала фильтруем, потом преобразуем.

    Мое решение:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Упражнение 3: Создание словаря из списка кортежей

У тебя есть список кортежей, где каждый кортеж содержит два элемента: имя и возраст человека.

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Задача:

  1. Используя списковое включение, создай словарь people_dict, где ключами будут имена людей, а значениями — их возраст.

  2. Выведи словарь people_dict на экран.

Подсказки:

  • Списковые включения создают списки, но их можно использовать для создания списков кортежей, которые затем можно передать в конструктор dict().

  • Подумай, как извлечь имя и возраст из каждого кортежа.

  • Помни, что словарь — это структура данных, которая хранит пары ключ-значение.

Немного объяснения:

В Python можно создать словарь из списка кортежей, где каждый кортеж состоит из двух элементов (ключ, значение). Для этого я использую конструктор dict(). Например:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

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


Мое решение:

101 игра на python. Шпаргалки. Списковые включения (list comprehensions) Гайд, Шпаргалка, Python, Программирование, Длиннопост

Разбор кода:

  1. people_data = [...]: Это исходный список кортежей, где каждый кортеж содержит имя и возраст человека.

  2. people_dict = dict(...): Мы используем конструктор dict(), чтобы создать словарь из списка кортежей.

  3. [ (name, age) for name, age in people_data ]: Это списковое включение, которое создает список кортежей.

    • (name, age): Это выражение создает кортеж из двух элементов: name и age.

    • for name, age in people_data: Это часть перебирает все кортежи из списка people_data. На каждой итерации кортеж распаковывается на две переменные: name и age.

  4. print(people_dict): Выводит созданный словарь.

Ключевые моменты:

  • Списковое включение создает список кортежей.

  • Конструктор dict() преобразует список кортежей в словарь, используя первый элемент кортежа в качестве ключа, а второй - в качестве значения.

  • Распаковка кортежей в цикле for name, age in people_data делает код более читабельным.

  • Списковое включение в этом примере используется для подготовки данных для словаря.

GIT


Другие шпаргалки:


Структуры данныx python
Переменные
Строки
Функции

Когда использовать dict и list
dict vs SimpleNamespace
Синглтон (Singleton)
dataclass

Показать полностью 15
Гайд Шпаргалка Python Программирование Длиннопост
1
10
hypo69
hypo69
8 месяцев назад
Программирование на python
Серия Шпаргалки

101 игра на python. Шпаргалки. Когда использовать dict и list⁠⁠

Примеры использования списков и словарей для представления данных о товарах. Я разложу абстрактный товар по характеристикам и покажу, как использовать список для представления товаров в категории.

  • Словарь (dict) – это идеальный способ представления характеристик одного товара, где есть пары "ключ-значение".

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

1. Словарь (dict) для представления характеристик товара

Словарь для представления характеристик одного товара. В этом случае, ключами словаря будут названия характеристик, а значениями – их соответствующие значения.

101 игра на python. Шпаргалки. Когда использовать dict и list Гайд, Инструкция, Программирование, Python, Шпаргалка, Длиннопост

Разъяснение кода:

  • словарь product, где ключами являются названия характеристик товара (id, name, brand, price и т.д.), а значениями — их соответствующие значения.

  • product.items() для итерации по всем парам "ключ-значение" и вывел их на экран.

2. Список (list) для представления товаров в категории

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

101 игра на python. Шпаргалки. Когда использовать dict и list Гайд, Инструкция, Программирование, Python, Шпаргалка, Длиннопост

Разъяснение кода:

  • Список products, где каждый элемент - это словарь, представляющий отдельный товар.

  • Я проитерировал список и вывел на экран информацию о каждом товаре, используя ключи словаря для доступа к характеристикам товара.

  • Я показал, как получить доступ к первому товару в списке, используя индекс 0.

  • Я проитерировал список еще раз, и показал как можно выводить только названия товаров.

Оригинала статьи в GIT

Другие шпаргалки:

Структуры данных в python
Переменные в python: что, как и зачем нужны
Строки в python
Функции в python
Синглтон (Singleton) в Python
dict vs SimpleNamespace в Python

Серия 101 игра на python с разбором кода. Портирую классические игры на язык python с добавлением искусственного интеллекта.

UPD:

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

Показать полностью 2
Гайд Инструкция Программирование Python Шпаргалка Длиннопост
0
5
hypo69
hypo69
8 месяцев назад
Программирование на python
Серия Шпаргалки

Шпаргалки. dict vs SimpleNamespace в Python. Особенности, преимущества, когда какой из них лучше использовать⁠⁠

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

1. Словари (dict)

  • Словарь в Python – это структура данных, которая хранит пары "ключ-значение". Ключи должны быть неизменяемыми типами данных (например, строки, числа, кортежи), а значения могут быть любыми.

  • Создание: Словари создаются с помощью фигурных скобок {} или функции dict().

  • Доступ к значениям: Значения доступны по ключу с помощью квадратных скобок [].

  • Изменение: Значения можно изменять, добавлять новые пары "ключ-значение" и удалять существующие.

Шпаргалки. dict vs SimpleNamespace в Python. Особенности, преимущества, когда какой из них лучше использовать Гайд, Инструкция, Python, Шпаргалка, Программирование, Рекомендации, Длиннопост

2. SimpleNamespace

  • SimpleNamespace – это простой класс из модуля types, который позволяет обращаться к значениям как к атрибутам объекта. Он хорош для хранения и передачи набора данных.

  • Создание: SimpleNamespace создается с помощью функции SimpleNamespace() и передачей именованных аргументов.

  • Доступ к значениям: Значения доступны как атрибуты объекта с помощью точечной нотации `.`

  • Изменение: Значения можно изменять, добавлять новые атрибуты и удалять существующие.

Шпаргалки. dict vs SimpleNamespace в Python. Особенности, преимущества, когда какой из них лучше использовать Гайд, Инструкция, Python, Шпаргалка, Программирование, Рекомендации, Длиннопост
Шпаргалки. dict vs SimpleNamespace в Python. Особенности, преимущества, когда какой из них лучше использовать Гайд, Инструкция, Python, Шпаргалка, Программирование, Рекомендации, Длиннопост
Шпаргалки. dict vs SimpleNamespace в Python. Особенности, преимущества, когда какой из них лучше использовать Гайд, Инструкция, Python, Шпаргалка, Программирование, Рекомендации, Длиннопост

Преимущества dict

  1. Гибкость ключей: Ключи словаря могут быть любыми неизменяемыми типами данных (строки, числа, кортежи). Это позволяет создавать словари со сложной структурой, где ключами могут быть, например, координаты точек или другие сложные объекты.

  2. Множество методов: Словари предоставляют богатый набор встроенных методов для работы с данными:

    • keys(): Возвращает все ключи словаря.

    • values(): Возвращает все значения словаря.

    • items(): Возвращает все пары "ключ-значение" в виде кортежей.

    • get(): Возвращает значение по ключу или значение по умолчанию, если ключа нет.

    • pop(): Удаляет элемент по ключу и возвращает его значение.

    • и многие другие.

  3. Динамическое создание: Словари можно легко расширять, добавляя новые пары "ключ-значение" во время выполнения программы.

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

  5. Удобно для JSON: Словари имеют удобное представление для работы с JSON данными

Преимущества SimpleNamespace

  1. Доступ к атрибутам через точку: Доступ к значениям с помощью точечной нотации (my_namespace.attribute) более читаем и удобен, чем использование квадратных скобок и ключей (my_dict["key"]). Это делает код более похожим на работу с обычными объектами.

  2. Удобство при передаче данных: SimpleNamespace удобно использовать для передачи данных в функции или модули, когда нужно передать набор связанных именованных значений. Вы можете передать один объект, вместо нескольких переменных.

  3. Простота создания: SimpleNamespace легко создать, передав именованные аргументы: SimpleNamespace(name="Alice", age=30).

  4. Меньше кода: Для простого доступа к значениям как к атрибутам объекта, использование SimpleNamespace может потребовать меньше кода, чем работа со словарями.

  5. Предсказуемая структура: В отличии от словаря, SimpleNamespace создает объект с конкретными атрибутами.

Когда что использовать:

  • Используй dict когда:

    • У тебя есть динамический набор ключей, которые могут меняться во время выполнения программы.

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

    • Ты работаешь с данными в формате "ключ-значение".

    • Тебе нужны гибкость и динамичность.

    • Тебе нужны ключи, которые не являются строками.

  • Используй SimpleNamespace когда:

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

    • Тебе нужно передавать набор данных в виде объекта.

    • Тебе нужна более читаемая точечная нотация для доступа к значениям.

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

    • Когда структура данных не должна меняться динамически.

Пример:

У тебя есть функция, которая принимает данные о пользователе.

Шпаргалки. dict vs SimpleNamespace в Python. Особенности, преимущества, когда какой из них лучше использовать Гайд, Инструкция, Python, Шпаргалка, Программирование, Рекомендации, Длиннопост

В этом примере, для dict я использую метод get, чтобы получить значения, с предустановленным значением, если ключа нет. Для SimpleNamespace я обращаюсь к атрибутам напрямую, что более читаемо.

Оригинала статьи в GIT

Другие шпаргалки:

Структуры данных в python
Переменные в python: что, как и зачем нужны
Строки в python
Функции в python
Синглтон (Singleton) в Python

Серия 101 игра на python с разбором кода. Портирую классические игры на язык python с добавлением искусственного интеллекта.

UPD:

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

Показать полностью 5
Гайд Инструкция Python Шпаргалка Программирование Рекомендации Длиннопост
7
8
hypo69
hypo69
8 месяцев назад
Программирование на python
Серия Шпаргалки

101 игра на python. Шпаргалки. Синглтон (Singleton) в Python⁠⁠

В Python, синглтон – это шаблон проектирования, который гарантирует, что у класса будет только один экземпляр, и предоставляет глобальную точку доступа к этому экземпляру. Это значит, что при попытке создать новый объект этого класса, ты всегда будешь получать один и тот же объект.

Синглтоны полезны, когда нужно ограничить количество экземпляров класса, например:

  • Для управления подключением к базе данных (чтобы не открывать много подключений).

  • Для хранения глобальной конфигурации приложения (чтобы все части приложения использовали одну и ту же конфигурацию).

  • Для логгирования (чтобы все сообщения шли в один файл).

Преимущества синглтона:

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

  • Глобальный доступ: Синглтон предоставляет глобальную точку доступа к экземпляру класса, что упрощает использование этого экземпляра в любой части программы.

Недостатки синглтона:

  • Глобальное состояние: Синглтон может привести к использованию глобального состояния, что может вызывать неожиданные побочные эффекты и усложнять тестирование.

  • Нарушение принципов ООП: Синглтон может нарушать принцип единственной ответственности и инкапсуляции.

Несколько способов реализации синглтона в Python.

1. Реализация Через переопределение метода __new__

  • Mетод __new__ отвечает за создание экземпляра класса. Переопределив его, я смогу контролировать этот процесс.

  • В этом примере я буду хранить единственный экземпляр класса в переменной _instance.

  • Если экземпляра еще нет, я его создам, иначе верну уже существующий экземпляр.

101 игра на python. Шпаргалки. Синглтон (Singleton) в Python Программирование, Инструкция, Python, Singleton, Шпаргалка, Длиннопост

2. Реализация Через декоратор

  • Декоратор – это функция, которая модифицирует класс.

  • В этом примере я создаю функцию-декоратор singleton, которая принимает класс и возвращает его обернутую версию.

  • Внутри декоратора я храню экземпляры классов в словаре instances.

  • Если экземпляр класса еще не создан, я его создам и сохраню в словаре, иначе верну существующий экземпляр.

101 игра на python. Шпаргалки. Синглтон (Singleton) в Python Программирование, Инструкция, Python, Singleton, Шпаргалка, Длиннопост

3. Реализация Через метакласс

  • Mетакласс позволяет контролировать создание классов.

  • В этом примере я создам метакласс SingletonMeta, который будет следить за созданием экземпляров.

  • Метакласс хранит экземпляры классов в словаре _instances.

  • При создании нового экземпляра, я проверяю, есть ли он уже в словаре, если нет – создаю, иначе возвращаю существующий экземпляр.

101 игра на python. Шпаргалки. Синглтон (Singleton) в Python Программирование, Инструкция, Python, Singleton, Шпаргалка, Длиннопост

4. Реализация Через модуль

  • В Python модуль сам по себе является синглтоном.

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

101 игра на python. Шпаргалки. Синглтон (Singleton) в Python Программирование, Инструкция, Python, Singleton, Шпаргалка, Длиннопост
101 игра на python. Шпаргалки. Синглтон (Singleton) в Python Программирование, Инструкция, Python, Singleton, Шпаргалка, Длиннопост

Когда использовать синглтон?

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

  • Когда тебе требуется глобальный доступ к этому объекту.

Оригинала статьи в GIT

Другие шпаргалки:

Структуры данных в python
Переменные в python: что, как и зачем нужны
Строки в python
Функции в python

Серия 101 игра на python с разбором кода. Портирую классические игры на язык python с добавлением искусственного интеллекта.

Серия информатика, с изложением терминов

UPD:

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

Показать полностью 5
Программирование Инструкция Python Singleton Шпаргалка Длиннопост
6
7
hypo69
hypo69
8 месяцев назад
Программирование на python
Серия Шпаргалки

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


1. Списки (Lists)

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

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

101 игра на python. Шпаргалки. Структуры данныx python Гайд, Программирование, Python, Информатика, Структуры данных, Шпаргалка, Длиннопост
  • Особенности:

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

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

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

  • Примеры:

101 игра на python. Шпаргалки. Структуры данныx python Гайд, Программирование, Python, Информатика, Структуры данных, Шпаргалка, Длиннопост
101 игра на python. Шпаргалки. Структуры данныx python Гайд, Программирование, Python, Информатика, Структуры данных, Шпаргалка, Длиннопост

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

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

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

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

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

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

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

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

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

  • Примеры:

101 игра на python. Шпаргалки. Структуры данныx python Гайд, Программирование, Python, Информатика, Структуры данных, Шпаргалка, Длиннопост

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:

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

Показать полностью 3
Гайд Программирование Python Информатика Структуры данных Шпаргалка Длиннопост
0
7
hypo69
hypo69
8 месяцев назад
Программирование на python
Серия Шпаргалки

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны⁠⁠

Статья из серии 101 игра на python. В серии я публикую разбор кода учебного репозитория для делающих первые шаги в разработке на python и просто любителей хорошего кода. В репозитории находится сборник программ игр, написанных лёгким языком, по которым ты можешь изучать код.

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

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны Гайд, Программирование, Инструкция, Длиннопост, Шпаргалка, Python, Яндекс Дзен (ссылка)

Здесь `x` и `y` — переменные. `x` хранит число 10, а `y` — строку 'Привет, мир!'.

Как работают переменные в Python?

1. Динамическая типизация

В Python не нужно указывать тип переменной при её создании — это делается автоматически.

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны Гайд, Программирование, Инструкция, Длиннопост, Шпаргалка, Python, Яндекс Дзен (ссылка)

2. Ссылочная модель хранения данных

Переменные в Python — это ссылки на объекты в памяти. Например:

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны Гайд, Программирование, Инструкция, Длиннопост, Шпаргалка, Python, Яндекс Дзен (ссылка)

Правила именования переменных

1.Обязательные правила

- Имя переменной может состоять из букв, цифр и символа `_`, но не может начинаться с цифры.

✅ Примеры: `my_var`, `_data`, `var123`

❌ Неправильно: `123var`, `my-var`

- Имя переменной чувствительно к регистру.

Пример: `age` и `Age` — это разные переменные.

2. Рекомендации для имён переменных:

- Используй имена, которые отражают суть данных.

❌ Плохо: `a = 100`, `b = 'Имя'`

✅ Хорошо: `salary = 100`, `username = 'Имя'`

- Для многословных имён используй стиль snake_case:

Пример: `user_age`, `total_cost`.

3. Зарезервированные слова

Нельзя использовать ключевые слова Python (например, `if`, `for`, `while`) в качестве имён переменных. Чтобы увидеть список ключевых слов, выполни:

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны Гайд, Программирование, Инструкция, Длиннопост, Шпаргалка, Python, Яндекс Дзен (ссылка)

Особенности хранения типов данных

1. Типы данных Python

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны Гайд, Программирование, Инструкция, Длиннопост, Шпаргалка, Python, Яндекс Дзен (ссылка)

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

- Изменяемые: `list`, `dict`, `set`.

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны Гайд, Программирование, Инструкция, Длиннопост, Шпаргалка, Python, Яндекс Дзен (ссылка)

- Неизменяемые `int`, `float`, `str`, `tuple`.

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны Гайд, Программирование, Инструкция, Длиннопост, Шпаргалка, Python, Яндекс Дзен (ссылка)

3. Функция `type` для проверки типа

101 игра нa python. Шпаргалка. Переменные в Python: что, как и зачем нужны Гайд, Программирование, Инструкция, Длиннопост, Шпаргалка, Python, Яндекс Дзен (ссылка)

1. Используй осмысленные имена переменных, чтобы твой код был понятным.

2. Помни, что Python не требует объявления типа переменной, но будь внимателен, чтобы не путаться с типами данных.

3. Изучи встроенные функции работы с переменными, такие как `type()`, `id()` и модули, такие как `sys`, чтобы лучше понимать, как Python управляет памятью.

UPD:

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

Показать полностью 7
Гайд Программирование Инструкция Длиннопост Шпаргалка Python Яндекс Дзен (ссылка)
1
11
hypo69
hypo69
8 месяцев назад
Программирование на python
Серия Шпаргалки

Шапргалка. Функции в python⁠⁠


Это дополнительный материал для изучающих python по репозиторию 101 игра на python, в котором находятся код игр для быстрого освоения программирования. Серия постов о проекте здесь


Содержание

1.Объявление функции
2. Параметры функции
- Виды параметров
3.Возврат значения
4. Локальные и глобальные переменные
5. Вложенные функции
6. Рекурсия
7. Обработка исключений
8. Пример использования


1.Объявление функции

Функция объявляется с помощью ключевого слова `def`, за которым следует имя функции, список параметров в круглых скобках и двоеточие. Тело функции пишется с отступом.

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

`a: int` и `b: int` — параметры функции с аннотациями типов.
-> int — аннотация типа возвращаемого значения.


2. Параметры функции

Функции могут принимать параметры, которые представляют собой входные данные. Они указываются в скобках после имени функции.

Пример с одним параметром:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

Виды параметров:
1. Обязательные параметры — должны быть переданы при вызове функции.
2. Необязательные параметры — могут иметь значения по умолчанию.

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

3. Возврат значения

Функция может возвращать значение с помощью ключевого слова `return`. Если `return` не используется, функция по умолчанию возвращает `None`.

Пример:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

4. Локальные и глобальные переменные

- Локальная переменная — это переменная, которая существует только внутри функции. Она создается и уничтожается при каждом вызове функции.
- Глобальная переменная— это переменная, которая доступна во всем коде, включая функции.

Пример использования глобальной переменной:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

Если внутри функции нужно изменить глобальную переменную, необходимо использовать ключевое слово `global`:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

5. Вложенные функции

В Python функции могут быть вложенными, то есть одна функция может быть определена внутри другой. Вложенная функция может обращаться к переменным внешней функции.

Пример:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

6. Рекурсия

Рекурсия — это когда функция вызывает саму себя. Это полезно для задач, которые можно разбить на более мелкие аналогичные задачи (например, факториал).

Пример рекурсии:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

7. Обработка исключений с `try` и `except`

Python предоставляет механизм обработки ошибок с помощью блоков `try` и `except`. Код, который может вызвать ошибку, помещается в блок `try`, а ошибки обрабатываются в блоке `except`.

Пример обработки ошибок:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

Здесь:
- Блок `try` пытается выполнить операцию деления.
- Блок `except ZeroDivisionError` перехватывает ошибку деления на ноль.
- Блок `except Exception as e` ловит другие исключения и выводит сообщение об ошибке.


8. Пример использования функций:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

9. Метод и функция — в чем разница?

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

  1. Метод:

    • Это функция, которая принадлежит определенному объекту или классу.

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

    • Методы используют self (в случае классов Python) для доступа к данным объекта.

    Пример:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост
  1. Функция:

    • Это независимый блок кода, который не связан с объектами или классами.

    • Функция вызывается напрямую, и она может работать с любыми переданными ей параметрами.

    Пример:

Шапргалка. Функции в python Программирование, Разработка, Шпаргалка, Python, Длиннопост

Основное различие:

  • Метод привязан к классу или объекту, а функция — это независимая единица кода, которая выполняет задачу и не зависит от объектов.

UPD:

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

Показать полностью 11
Программирование Разработка Шпаргалка Python Длиннопост
0
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии