Daily Coding 🔥
8.75K subscribers
1.88K photos
6 videos
1 file
1.73K links
Канал, который научит вас программировать лучше и эффективнее.

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

Ссылка: @Portal_v_IT

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

Канал на бирже: telega.in/c/dailycoding
Download Telegram
💡 Если вы используете сторонние библиотеки — добавьте в репозиторий файл requirements.txt

Часть 1

Если в проекте используются сторонние зависимости, об этом нужно сообщить. Легче всего это сделать, создав файл requirements.txt в корневой директории проекта. В каждой строке этого файла приводятся сведения об одной зависимости. Нужно, кроме того, добавить инструкции по работе с этим файлом в README. Подробности о requirements.txt можно найти в руководстве пользователя по pip.

Примеры

Файл requirements.txt для Flask-приложения

Добавление файла requirements.txt в корневую директорию проекта — это самый лёгкий способ отслеживания зависимостей. Можно, помимо сведений о самих зависимостях, дать сведения и об их версиях. Вот пример файла requirements.txt:

gunicorn
Flask>=1.1
Flask-SQLAlchemy
psycopg2

В следующей части рассмотрим указание более подробных сведений о зависимостях с использованием файла requirements .in

#советы #coding #python
📑 Реализация epoll, часть 1

Сегодня мы публикуем перевод первой статьи из серии материалов, посвящённых реализации epoll в ядре Linux 3.16.1*. Автор исходит из предположения о том, что читатели знакомы с API и с использованием epoll. Он уделяет основное внимание реализации подсистемы epoll в ядре Linux, а не особенностям её применения. Если вы не знаете о том, как пользоваться epoll — автор рекомендует сначала почитать документацию. Это значительно облегчит понимание деталей реализации этого механизма.

#статьи
Выберите правильный вариант 👇🏼 #test #sql
💡 Если вы используете сторонние библиотеки — добавьте в репозиторий файл requirements.txt

Часть 2

Перед прочтением рекомендуем ознакомиться с первой частью.

▍Указание более подробных сведений о зависимостях с использованием файла requirements .in

При работе над любым проектом всегда полезно иметь возможность воспроизведения его окружения. В результате, даже если вышла новая версия какой-нибудь библиотеки, можно использовать старую, проверенную в деле версию, работая с ней до тех пор, пока не будет решено перейти на новую. Это называется «фиксацией зависимостей». Легче всего это можно сделать, прибегнув к pip-tools. При таком подходе в вашем распоряжении окажется два файла: requirements .in и requirements.txt. Второй из них при этом вручную не модифицируют, просто добавляя его в репозиторий вместе с requirements .in. Вот как выглядит файл requirements .in:

gunicorn
Flask>=1.1
Flask-SQLAlchemy
psycopg2

В следующей части рассмотрим автоматически созданный файл requirements.txt.

#советы #coding #python
🔥 Лучшее на канале за неделю

1
. Linux kernel development для самых маленьких.

2. Playwright — отличная библиотека узлов от команды Microsoft для создания автоматизированных тестов пользовательского интерфейса с однократной записью.

3. Если вы используете сторонние библиотеки — добавьте в репозиторий файл requirements.txt.
🛠 Requests — уменьшает тяжелую ручную работу. Автоматизирует такие задачи как добавление строки запроса к URL, шифрование форм отправки данных, постоянное HTTP-соединение, объединение HTTP-соединений и т. д. путем использования urllib3.

Для облегчения разработки также обеспечивается автоматическое дешифрование контента. Библиотека предлагает загрузку других функций, таких как журнал аутентификации, элегантные key/value cookies, Unicode-представление для аттрибута body объекта response, потоковое скачивание, тайм-аут соединения, поддержка .netrc.

Эта библиотека используется в проектах Spotify, Microsoft, NPR, Heroku, Amazon, BuzzFeed, Reddit, Twitter, Mozzila (список можно продолжать еще долго).

В общем, Requests – не лишняя библиотека для любого веб-проекта.

#инструменты #python
Выберите правильный вариант 👇🏼 #test #python
🛠 python-for-android — это инструмент для упаковки приложений Python на Android. Вы можете создать свой собственный дистрибутив Python, включая нужные модули и зависимости, и связать его в APK вместе со своим кодом.

#инструменты #python
💡 Если вы используете сторонние библиотеки — добавьте в репозиторий файл requirements.txt

Часть 2 | Часть 1

Указание более подробных сведений о зависимостях с использованием файла requirements.in

При работе над любым проектом всегда полезно иметь возможность воспроизведения его окружения. В результате, даже если вышла новая версия какой-нибудь библиотеки, можно использовать старую, проверенную в деле версию, работая с ней до тех пор, пока не будет решено перейти на новую. Это называется «фиксацией зависимостей». Легче всего это можно сделать, прибегнув к pip-tools. При таком подходе в вашем распоряжении окажется два файла: requirements.in и requirements.txt. Второй из них при этом вручную не модифицируют, просто добавляя его в репозиторий вместе с requirements.in. Вот как выглядит файл requirements.in:

gunicorn
Flask>=1.1
Flask-SQLAlchemy
psycopg2

В следующей части рассмотрим автоматическое создание файла requirements.txt на основе requirements.in.

#советы #coding #python
Выберите правильный вариант 👇🏼 #test
💡 Если вы используете сторонние библиотеки — добавьте в репозиторий файл requirements.txt

Перед прочтением рекомендуем ознакомиться с первой и второй частями.

Часть 3

Для того чтобы на основе файла requirements.in был бы автоматически создан requirements.txt, файл requirements.in компилируют, используя команду pip-compile. Вот как выглядит автоматически сгенерированный файл requirements.txt:

# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile
#
click==7.1.2 # via flask
flask-sqlalchemy==2.4.4 # via -r requirements.in
flask==1.1.2 # via -r requirements.in, flask-sqlalchemy
gunicorn==20.0.4 # via -r requirements.in
itsdangerous==1.1.0 # via flask
jinja2==2.11.2 # via flask
markupsafe==1.1.1 # via jinja2
psycopg2==2.8.6 # via -r requirements.in
sqlalchemy==1.3.19 # via flask-sqlalchemy
werkzeug==1.0.1 # via flask

# The following packages are considered to be unsafe in a requirements file:
# setuptools

Как видите, готовый файл содержит сведения о точных версиях всех зависимостей.

#советы #coding #python
🔥 Лучшее на канале за неделю

1
. Requests уменьшает тяжелую ручную работу и автоматизирует такие задачи как добавление строки запроса к URL, шифрование форм отправки данных, постоянное HTTP-соединение, объединение HTTP-соединений и т. д. путем использования urllib3..

2. python-for-android — это инструмент для упаковки приложений Python на Android.

3. Если вы используете сторонние библиотеки — добавьте в репозиторий файл requirements.txt - Часть 2 | Часть 3.
🛠 Insomnia — мощный инструмент для отладки запросов HTTP и GraphQL. Это бесплатное приложение имеет красивый пользовательский интерфейс со всем необходимым для тестирования конечных точек REST и других API. Доступно для Mac, Windows и Linux..

#инструменты
Выберите правильный вариант 👇🏼 #test #python
🛠 Simplejson — это быстрый, точный и расширяемый json кодировщик и декодировщик, который поддерживает Python 3.3+ с обратной совместимостью с Python 2.5.

Simplejson написан на Python и не имеет внешних зависимостей. Он также включает расширения, написанные на С для представлений с особо высоким быстродействием. Помимо дефолтной UTF-8, декодер Simplejson может оперировать строками JSON, поступающими в любой кодировке.

С дефолтным Kwarg для дампов кодировщик Simplejson может быть использован для обеспечения сериализации даже неподдерживаемых объектов.

Библиотека Simplejson может осуществлять заключительную обработку JSON- объектов с помощью кваргов object_hook или object_pairs_hook. Реализация таких протоколов как JSON-RPC существенно облегчается с использованием Simplejson.

#инструменты #python
💡 Форматируйте код с помощью black

▍Часть 1

Неоднородное форматирование кода не помешает ему нормально работать. Но если код хорошо отформатирован — это улучшит его читабельность и упростит его поддержку. Форматирование кода может и должно быть автоматизировано. Если вы пользуетесь VS Code, то можете увидеть рекомендацию по установке black в качестве автоматического средства форматирования исходного кода, написанного на Python. Форматирование кода производится при сохранении файлов. Кроме того, black можно установить самостоятельно и форматировать код, пользуясь средствами командной строки.

Примеры

Неправильно: неформатированный код

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

Продолжение следует...

#советы #coding #python
Выберите правильный вариант 👇🏼 #test #python