#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
Forwarded from Хитрый Питон
Я как-то пропустил новость о том, что вышел новый mypy под python 3.9. Из интересного:
- понимает конструкции типа list[int] которые появились в 3.9
- понимает X | Y вместо Union[X, Y]
- наконец понимает модули без init.py
Подробности тут http://mypy-lang.blogspot.com/2021/01/mypy-0800-released.html
Forwarded from Python Academy
Создание процессов

Класс Process из встроенного модуля multiprocessing позволяет создавать процессы без прямого вызова функции fork, про которую писали раньше на канале.

При создании экземпляра Proccess необходимо передать функцию, которую требуется исполнить в отдельном дочернем процессе и аргументы этой функции. Процесс будет создан после вызова метода start. Внутри метода start будет вызван fork и будет исполнена функция в отдельном процессе.

Очень важно ожидать завершения всех созданных дочерних процессов. Для этого можно воспользоваться удобной функцией join.

#процессы #multiprocessing
Forwarded from Python Academy
Одноразовый метод в классе

В случае, если вдруг понадобится в классе функция, которая будет использоваться всего один раз, после чего будет использоваться другая функция, можно воспользоваться приемом на картинке.

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

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

#классы #функции
Forwarded from Python Academy
Красивые таблицы в терминале

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

Для создания таблиц и работы с ними используется класс PrettyTable из этого модуля. Задать название для столбцов можно с помощью атрибута fields_name. Строки в таблицу добавляются путем вызова метода add_row.

Более того, модуль prettytable позволяет регулировать различные параметры, сортировать данные, работать с html, а также взаимодействовать с csv и sql таблицами. Так что возможностей у этого модуля предостаточно.

#таблицы #prettytable
Forwarded from Python Academy
Прогресс выполнения программы

Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль tqdm является простым и лаконичным вариантом.

Привычный range можно заменить на trange для визуализации прогресса. А для итерации по какой-либо последовательности, достаточно просто передать её в функцию tqdm. Также модуль хорошо себя зарекомендовал и в Jupyter Notebook.

Кстати, интересный факт – название tqdm произошло от арабского слова "taqaddum" (تقدّم), которое означает "прогресс," а также это ещё и сокращение от "я тебя сильно люблю" на испанском (te quiero demasiado).

#модули #tqdm
Forwarded from Python Academy
Перечисления

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

Из документации можно узнать о том, что Enum — это набор символических имён, привязанных к уникальным, неизменным значениям. Члены одного перечисления можно сравнивать на идентичность.

Также можно задать геттер через @property, который используют для получения перечислений в других форматах. В примере реализовано перечисление цветов в RGB, а через геттер их можно получить в формате hex.

#enum
Forwarded from Python книги
The Hacker’s Guide to Scaling Python

Автор: Julien Danjou
Год издания: 2017
Книги по прикладному использованию Python

Мы собрали для вас подборку книг, в которых рассматриваются способы решения конкретных практических задач в разных областях, а Python выступает в качестве инструмента. Все книги - 2019 года, есть ссылки на скачивание.

Читать статью

#книги
🤹 11 забавных пасхалок в Python

Python очень серьезный язык, но он полон «пасхальных яиц» и забавных отсылок. В этой статье мы собрали наиболее интересные скрытые функции одного из самых популярных языков программирования.

https://proglib.io/sh/46IfnwaohY
🐍 Язык C для программистов на Python

Если вы уже владеете синтаксисом Python, самое время познакомиться с основами языка C и посмотреть, как он используется в исходном коде CPython.

https://proglib.io/sh/I47tzqhl3w
Tips & Tricks. 5 простых способов удалить символ из строки

В этой статье:
- Примитивный метод.
- Функция replace().
- Срезы и конкатенация.
- Метод join() и генератор списков.
- Метод translate()

Читать статью

#строки
Forwarded from Python Academy
Валидаторы данных

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

Модуль validators позволяет использовать уже готовые валидаторы для самых распространенных задач. В примере можете как раз увидеть валидацию почты и ссылок.

Помимо этого, validators позволяет также работать с ipv4, ipv6, mac адресами и многим другим. В итоге, имеем лаконичный и простой модуль с хорошим функционалом.

#validatoras