Just Python
10.2K subscribers
4.39K photos
11 videos
4.37K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
__enter__ и_enter__ и
Эти методы используются для создания контекстных менеджеров (то есть объектов, которые можно использовать в блоке with), и позволяют управлять ресурсами, которые нужно освободить после использования.

При входе и выходе из блока with будут выведены соответствующие сообщения.

#theory // Just Python
Погрузитесь в мир Python с нашим бесплатным курсом!

🎓 Включено 45 уроков, 56 упражнений в тренажере и 163 проверочных теста. Узнаете, как создавать программы, работать с условиями и функциями.

Что вы освоите:
— Составление программ из нескольких модулей.
— Анализ ошибок в коде с использованием отладочной печати.

📚 Курс охватывает основы Python: синтаксис, условия, циклы, типы данных и библиотеки. Практика на каждом шаге поможет вам уверенно использовать язык.

Начните свое обучение с бесплатного базового курса Python и вы сможете создавать несложные программы, а так же анализировать ошибки в коде!
Прокачанный трейсинг ошибок

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

Теперь для указания на конкретный объект, вызвавший ошибку, используется строка с несколькими ^ (символ называется “циркумфлекс”). В сниппете выше мы просим поделить на ноль, и конечно, это вызывает ошибку.

#theory // Just Python
Улучшенный синтаксис параллельных процессов

Раньше мы вручную отслеживали все свои задачи в списке, прежде чем передать их в collect().

Теперь используем контекстный менеджер.

#theory // Just Python
Перезагрузка оператора

Python поддерживает перезагрузку оператора. Зная эти слова, вы сразу кажитесь настоящим компьютерным гением.
На самом деле, концепция довольно проста. Вы когда-нибудь задавались вопросом, почему в Python можно использовать оператор + для добавления чисел и конкатенации строк? Это и есть перезагрузка оператора в чистом виде.
Вы можете определить объекты, которые будут пользоваться стандартными символами операторов Python по-своему. Тогда их можно будет использовать в зависимости от содержимого объектов, с которыми вы работаете.

#theory // Just Python
__call__

Этот метод позволяет создать так называемые «вызываемые» объекты, то есть их можно вызывать как функции.

#theory // Just Python
__getitem__ и __setitem__

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

#theory // Just Python
Автоматизация и скриптинг

Есть множество вещей, которые вы можете автоматизировать всего за 4-5 строк кода. От установки заданий cron и напоминаний до загрузки ваших любимых видео на YouTube, вы можете сделать все это с помощью нескольких строк в python

#theory // Just Python
Выражения-генераторы — это синтаксис

Похожий на синтаксис представления списка (list comprehension), который позволяет нам создать объект-генератор.
Допустим, у нас есть представление-списка, который фильтрует пустые строки из файла и удаляет переход на новую строку в конце \n.

#theory // Just Python
Телеграмм бот-админ

При использовании команды /post, бот отправляет сообщение, указанное после команды, всем пользователям, чьи ID хранятся в списке joinedUsers.

Итак с помощью некоторой команды, в данном примере /post можно публиковать новости в боте, например:
* важные объявления
* новости
* технические работы/неполадки
* может быть когда то в далеком будующем рекламу)

Когда новый пользователь начинает чат с ботом, его ID добавляется в список joinedUsers, позволяя боту отправлять ему сообщения в будущем.

#theory // Just Python
Что нового в Python 3.12. Перезапись декоратора

Если у нас есть класс Base c методом get_color(), и в наследном классе GoodChild мы хотим эту функцию переопределить, то инструкцией @override это сделать очень просто.

#theory // Just Python
Что нового в Python 3.12. Псевдонимы типов

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

#theory // Just Python
Фото в видео

Этот код создаст видео "my_slideshow.mp4" из фотографий 'photo1.jpg', 'photo2.jpg', и 'photo3.jpg' с частотой 1 кадр в секунду.

#theory // Just Python
Что нового в Python 3.12. TypedDict для определения типов **kwargs

Если вам доводилось налегать на kwargs (keyword arguments – аргументы c ключевыми словами), то вы помните, что оператор двойная звездочка издавна упаковывает аргументы, переданные по имени, в словарь.

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

#theory // Just Python
Выражения присваивания (Assignment expressions)

Так же известные как «моржовый оператор» (walrus operator) — новый синтаксис, который позволит присваивать значения переменным внутри другого выражения. Это, наверное, самое известное и обсуждаемое из нововведений версии 3.8.
Целью введения оператора является повышение читаемости кода, поэтому использовать его (как и все остальные операторы) стоит не при первой же возможности, а только тогда, когда это уместно.

#theory // Just Python
Сила «однострочников» (One-Liners)

Вы устали пробираться между строк кода и теряться в условных конструкциях? Тогда, однострочники Python — это то, что вам нужно.

#theory // Just Python
Что нового в Python 3.12. Порядок слов в инструкции импорта

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

#theory // Just Python
__init__

Если у вас есть определенные классы в Python, вы обязательно встретитесь с методом init. Он отвечает за инициализацию экземпляра класса, поэтому именно в нем вы обычно устанавливаете его неотъемлемые атрибуты – например, длина ребра квадрата.

#theory // Just Python
Встроенная (Built-in)

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

#theory // Just Python
__call__

Этот метод позволяет создать так называемые «вызываемые» объекты, то есть их можно вызывать как функции.

#theory // Just Python