#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
Forwarded from # pip install (Student B.)
🔥 Переменное количество аргументов Функции в Python

Наш чат: @python_scripts

Мы можем использовать специальный синтаксис *args и **kwargs внутри функции для передачи переменного количества аргументов.

Использование *args и **kwargs по сути обеспечивает читабельность и удобство, но их следует использовать с осторожностью.

Подробнее: https://python-scripts.com/def-args-kwargs
Forwarded from Moscow Python (Valentin Dombrovsky)
Раньше в пакете dry-python returns мы предоставляли несколько контейнеров, которые значительно упрощали жизнь Python разработчикам в некоторых случаях: работа с None и исключениями, внедрение зависимостей, работа с асинхронностью и так далее. Теперь мы сделали следующий шаг: вы сами можете писать любые нужные вам контейнеры! Мы реализовали поддержку Higher Kinded Types и наборы универсальных интерфейсов, чтобы все работало для ваших типов, так же как и для наших. Более того, мы прикрепили к каждому интерфейсу по набору законов. Такие "законы как значения" позволяют нам генерировать сотни тестов к вашим контейнерам всего из одной строчки кода. Попробуйте!
https://www.youtube.com/watch?v=jL-t0jxEM40

Подробней о новинках в dry-python и многом другом поговорим на Russian Python Week!
Регистрация - https://conf.python.ru
Мастер-класс "Dry-python Functional Workshop" - https://conf.python.ru/moscow/2020/ab...
Drylabs: https://drylabs.io
Dry-python: https://dry-python.org
Чат dry-python в Телеграме (англ.): https://t.me/drypython
Команда pip рассматривает возможность удаления pip search или изменения способа его работы. Чтобы помочь обосновать решение, расскажите о своем опыте использования pip search.

https://proglib.io/w/619c16e6
Automate the boring stuff with Python, 2nd Edition (2019)
Автор: Al Sweigart
Количество страниц: 504

Автор показывает, как писать программы, которые могут сделать за вас рутинную работу. Книга поможет новичкам разобраться в программировании на Python и сразу применить свои знания. Данное издание этой книги включает новую главу о проверке входных данных, а также учебные пособия по автоматизации Gmail и Google Sheets и советы по автоматическому обновлению файлов CSV.

Скачать книгу
Что делает кодовую базу Python правильной?

https://proglib.io/w/4633dc75
В чем разница между методами type() и isinstance() и какой из них лучше подходит для проверки типа объекта?

https://proglib.io/w/ef566860
This media is not supported in your browser
VIEW IN TELEGRAM
enum, перечисления
Программист время от времени сталкивается с необходимостью ограничить множество допустимых значений для некоторого типа данных. Например, день недели это 7 различных значений, а месяцев у нас 12. Для удобного хранения подобных данных придуманы перечисления - enum.
Стандартная реализация enum появилась в Python начиная с версии 3.4 ( PEP 435. До этого ее легко заменяли словарями.
Реализация представлена модулем enum. Модуль содержит несколько классы EnumIntEnum (константы могут иметь только тип int) и декоратор unique, который проверяет ваш набор констант на дубликаты.
Forwarded from Python Quiz
Какая константа не предусмотрена в Python по умолчанию?🐍🤨🐍
Anonymous Quiz
27%
NotImplemented
38%
Ellipsis
35%
ValueN
Forwarded from Python Academy (Adrian K.)
Перечисления (Enum)

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

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

Из документации по Python 3 можно узнать о том, что перечисление — это набор символических имён, привязанных к уникальным, неизменным значениям. Члены одного перечисления можно сравнивать на идентичность. А также перечисления можно обходить с помощью циклов.
В чем разница между методами type() и isinstance() и какой из них лучше подходит для проверки типа объекта?

https://proglib.io/w/ef566860
🐍🗄 Управление данными с помощью Python, SQLite и SQLAlchemy

На одном примере сравниваются три модели управления данными: csv-файлы, SQL-запросы к простой базе данных на SQLite и контроль информации в виде объектов Python с SQLAlchemy. В конце пример веб-приложения на Flask с использованием SQLAlchemy.

https://proglib.io/sh/fTBqinaS1w
Forwarded from Python Academy
Новый оператор объединения словарей

В Python есть много разных способов объединить несколько словарей. Мне, например, больше всего нравилась распаковка словарей в один новый.

Но в последнем обновлении добавили специальный оператор |, с помощью которого можно это делать ещё проще.

#словари
Forwarded from Python Academy
​​Модуль subprocess

Всем доброго вечера, сегодня мы поговорим немного о модуле subprocess:)

Данный модуль предоставляет унифицированный интерфейс для создания дополнительных процессов с вызовом программ, а также может подключать к стандартным потокам ввода, вывода и вывода об ошибках. Модуль был добавлен в стандартную библиотеку python на замену os.system() и os.popen().

Для создания процессов в subprocess используются функции run(), call(), check_call(), check_output(), а также класс Popen.

Сегодня мы расскажем о функциях call, check_call, check_output и run, а завтра поговорим о Popen. Они используются, когда требуется запустить программу и дождаться ее выполнения.

call - вызывается для создания процесса, ожидает выполнения и возвращает код выполнения (если программа отработала корректно, вернется 0).

check_call - делает тоже самое только еще и проверяет возвращаемое значение, если код выхода указывает, что произошла ошибка, то функция выбросит исключение CalledProcessError.

check_output - использовалась, когда нужно было захватить вывод запущенного процесса. Эта функция была нужна, так как потоки ввода и вывода запущенного процесса через call привязывались именно к вводу и выводу данного процесса, поэтому вывод таким образом захватить не получится.

run - это функция пришла в python версии 3.5 на замену трем предыдущим и умеет все, что и они и немножко больше (данные три функции были оставлены для обратной совместимости). run() возвращает объект CompletedProcess, который привязан к результату.

Для захвата вывода процесса нам нужно передать capture_output=True, после чего в аргументах объекта stdout и stderr будут записаны соответствующие выводы, запущенной программы. Но по умолчанию вывод будет вывод будет в байтах, чтобы получить читабельный текст мы также передаем флаг text=True.

Иногда программа ожидает от нас ввода из стандартного потока stdin, в этом случае мы можем передать ввод через аргумент input.

Для того, чтобы породить исключение в случае получения кода возврата об ошибке мы можем передать флаг check=True.

И как бонус у этой функции есть аргумент timeout позволяющий передать время, через которое процесс должен быть принудительно завершен. В случае принудительного завершения будет выброшено исключение TimeoutExpired.
Взаимодействовать с файлами в Python
#Python

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

https://proglib.io/w/1ca053af