Библиотека Python разработчика | Книги по питону
19.5K subscribers
1.05K photos
391 videos
82 files
988 links
Полезные материалы для питониста по Фреймворкам Django, Flask, FastAPI, Pyramid, Tornado и др.

По всем вопросам @evgenycarter

РКН clck.ru/3Ko7Hq
Download Telegram
🏆 Yandex Cup 2023 — открытый чемпионат для настоящих творцов

Разработчики — художники нового мира. Они создают смыслы, правила и законы, манифестируют идеи, творят миры и целые вселенные. И, если их предшественники делали это, используя слова, краски и звуки, то современные творцы создают новую реальность с помощью программного кода.

Искусство писать код

Тема чемпионата в этом году «Решаем искусство». Участников ждут нестандартные задачи на стыке IT и творчества, а лучшие встретятся лицом к лицу в финале, чтобы оживить арт-инсталляцию и разделить между собой 8 500 000 рублей.

Показать своё мастерство можно в 6 направлениях:

🔸 Фронтенд
🔸 Бэкенд
🔸 Мобильная разработка
🔸 Аналитика
🔸 Алгоритмы
🔸 Машинное обучение

Финал и церемония награждения пройдут офлайн в офисе Яндекса в Казахстане. Яндекс предоставит финалистам проезд и проживание в Алматы.

Регистрация открыта до 29 октября включительно:

👉 Участвую!

#Yandex_Cup23
11👍5🔥5👎1
Улучшение кода Django с помощью pre-commit

Pre-commit - это инструмент, позволяющий автоматизировать процесс проверки кода на наличие ошибок и проблем перед его коммитом в репозиторий, отсюда и название.

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

https://builtwithdjango.com/blog/improve-your-code-with-pre-commit

@BookPython
👍5
Python: 7 потрясающих примеров использования лямбда-функции

У лямбда-функции, безусловно, много вариантов использования. Здесь собраны наиболее важные места, где может использоваться лямбда-функция (с примерами кода). Вы можете сохранить эту статью для дальнейшего использования!

На данный момент я добавил 7 примеров использования. Я буду обновлять эту статью, если появятся другие случаи использования лямбда-функции.

https://python.plainenglish.io/python-7-mind-blowing-use-cases-of-the-lambda-function-3bb896f866af

@BookPython
👍3
Что такое wheel и eggs в Python? Какая между ними разница?

Python wheel - Это стандартный формат установки дистрибутивов Python, который содержит все файлы и метаданные, необходимые для установки. Файл WHL также содержит информацию о версиях и платформах Python, поддерживаемых этим файлом. Расширение файла wheel - .whl

Python egg - Это сжатый архив ZIP, содержащий исходные файлы приложения Python вместе с метаинформацией о дистрибутиве. Расширение файла egg - .egg

Основная разница заключается в том, что wheel предоставляет более простой и надежный способ установки пакетов. В отличие от eggs, он не требует установки дополнительных зависимостей и обеспечивает более быстрое время установки. Кроме того, wheel поддерживает все платформы, на которых может работать Python.

@BookPython
У нас в Excel поселился замечательный Python

На Хабре уже была новость об этом знаменательном событии. Правда, она похожа на пересказ официального пресс-релиза Microsoft, но такой и должна быть "новость".

Я же по какой‑то непонятной мне самому причине начал пробовать использовать Python внутри Excel раньше, несколько недель тому назад. Безуспешно. Не получилось вопреки всем моим усилиям: в начале подключился к Microsoft 365 Insider, Beta Channel — там опции не наблюдалось, затем загрузил add‑in от Excel Labs, Microsoft Garage project — фича, хотя и запустилась, но у меня не работала, постоянно возвращая ошибки.

И вот 12.10.2023 пришёл и-мейл с радостным известием и после обновления Office (уточняю - Microsoft 365 Insider, Beta Channel) в меню Formulas есть опция Python in Excel

https://habr.com/ru/articles/769732/

@BookPython
👍10
Профилирование в Python: Как найти узкие места в производительности

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

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

https://realpython.com/python-profiling/

@BookPython
👍1
Подборка Telegram каналов для программистов

Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux


https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)

https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика

https://t.me/itmozg Программисты, дизайнеры, новости из мира IT.
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике

https://t.me/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста

1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus

Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах

GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
https://t.me/game_devv Все о разработке игр

Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT

Чат программистов📌
https://t.me/developers_ru

Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов

БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning

Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию

QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика

Шутки программистов 📌
https://t.me/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_1 Статьи из "Хакера"

Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров

Английский 📌
https://t.me/UchuEnglish Английский с нуля

Математика 📌
https://t.me/Pomatematike Канал по математике

Excel лайфхак📌
https://t.me/Excel_lifehack
👍1
Разработка real-time приложений с Python и WebSocket


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

Примеры real-time приложений:

Обновление в реальном времени в социальных сетях, как Facebook и Twitter.
Мгновенные сообщения в мессенджерах, таких как WhatsApp и Slack.
Онлайн-игры, где реакция игроков должна быть немедленной.
Финансовые рынки, где каждая миллисекунда имеет значение.

https://habr.com/ru/companies/otus/articles/770256/

@BookPython
👍1😁1
Media is too big
VIEW IN TELEGRAM
5 советов по организации кода на языке Python

00:00 | Introduction
00:26 | #1 - Use Modules and Packages
03:59 | #2 - One Class = One File
05:15 | #3 - Group Related Functionality Together
07:47 | #4 - Separate Utility & Helper Functions
09:26 | #5 - Organize Imports

@BookPython
👍7
Аналитика данных python

👉@BookPython
👍21😱31
Прогнозирование временных рядов с помощью библиотеки Skforecast

В открытом доступе существует огромное число библиотек для построения моделей машинного обучения в Python. Самые популярные — scikit-learn, XGBoost, LightGBM, Catboost, PyTorch. Каждая из них позволяет построить регрессионную модель для прогнозирования на временных рядах, но для этого требуется преобразование данных и создание новых фичей (feature engineering).

Кроме того, временные ряды требуют своих подходов в оценивании моделей машинного обучения, так как стандартная кросс-валидация не подходит для временных данных. В этой статье мы (я + я) рассмотрим нюансы прогнозирования на практике и с помощью библиотеки skforecast.

https://habr.com/ru/companies/mvideo/articles/771820/

👉@BookPython
👍4
Шпаргалка: fixture в pytest

В данной статье представлены примеры использования фикстур (fixture) в pytest.

Фикстуры в pytest представляют собой функции, которые можно использовать при автоматизации тестирования для решения следующих задач:

- выполнение действий до проведения тестирования (например, настройка тестового окружения, создание тестовых данных, различные сетевые подключения, открытие файла и пр.);

- выполнение действий после проведения тестирования (например, удаление временных данных, формирование отчета, отключение сетевых подключений, закрытие файлов и пр.);

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

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

Дисклеймер: В статье продемонстрированы синтетические примеры, наполненные методом print(), это сделано только для демонстрации последовательности выполнения шагов в stdout. При создании реальных тестовых кейсов рекомендуется использовать лучшие практики и паттерны программирования и проектирования, а также применяемые стандарты при разработке программного кода.

https://habr.com/ru/articles/731296/

👉@BookPython
👍3
Используйте метод get для доступа к элементам словаря вместо использования квадратных скобок

👉@BookPython
👎7👍5
Подборка Telegram каналов для программистов

Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux


https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)

https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика

https://t.me/itmozg Программисты, дизайнеры, новости из мира IT.
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике

https://t.me/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста

1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus

Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах

GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
https://t.me/game_devv Все о разработке игр

Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT

Чат программистов📌
https://t.me/developers_ru

Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов

БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning

Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию

QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика

Шутки программистов 📌
https://t.me/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_1 Статьи из "Хакера"

Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров

Английский 📌
https://t.me/UchuEnglish Английский с нуля

Математика 📌
https://t.me/Pomatematike Канал по математике

Excel лайфхак📌
https://t.me/Excel_lifehack
👍2
PySpark для аналитика. Как правильно просить ресурсы и как понять, сколько нужно брать

Эта статья будет полезна аналитикам, дата-инженерам и специалистам по обработке больших данных, а также тимлидам команд, которые работают с Apache Spark для решения задач аналитики и машинного обучения. Вы узнаете, как правильно задавать параметры Spark-сессии, чтобы получить ресурсы.

https://habr.com/ru/companies/avito/articles/732870/

👉@BookPython
👍4
Написание простого асинхронного сервера очередей сообщений на языке Python

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

import sys, asyncio

async def handle_client(reader, writer):
print('New client connected...')
line = str()
while line.strip() != 'quit':
line = (await reader.readline()).decode('utf8')
if line.strip() == '': continue
print(f'Received: {line.strip()}')
writer.write(line.encode('utf8'))
writer.close()
print('Client disconnected...')

async def run_server(host, port):
server = await asyncio.start_server(handle_client, host, port)
print(f'Listening on {host}:{port}...')
async with server:
await server.serve_forever()

asyncio.run(run_server(host='localhost', port=int(sys.argv[1])))


https://bytepawn.com/writing-a-simple-python-async-message-queue-server.html

👉@BookPython
👍41
Решаем криптарифмы с помощью алгебры и python

Если вы увлекались математикой в возрасте до 12 лет, то, наверное, встречались с криптарифмами - числовыми ребусами.

Числовым ребусом называется корректное арифметическое выражение (обычно - равенство), часть цифр в котором заменена на буквы и звездочки. Правила просты: одинаковые буквы заменяются на одинаковые цифры, разные - на разные.

Задача - восстановить исходные цифры, получив верное равенство.

Числовые ребусы хороши для тренировки у младшеклассников навыков логического мышления и счета в столбик. Однако и взрослым программистам может быть интересно поискать ответ на общий вопрос - а как, всё таки, алгоритмизировать процесс решения ребуса?

https://habr.com/ru/articles/733642/

👉@BookPython
👍32
Объединение PDF-файлов с помощью PyPDF2

Установите библиотеку с помощью pip.

pip install PyPDF2

Вы можете легко объединить PDF-файлы, используя приведенный ниже код. Просто замените имена в списке pdf-файлов на имена pdf-файлов, которые вы хотите объединить (если они находятся в том же каталоге, что и ваш Python-скрипт), или на ссылки на pdf-файлы.

import PyPDF2

def merge files (pdf files: list):
# Create a PDF merger obiect
pdf merger = PyPDF2.PdfFileMerger ()
# Loop through the list and append each PDF to the merger
for pdf_file in pdf_files:
pdf_merger.append(pdf_file)
# Output file for the merged PDF
output_pdf = "merged_file.pdf"
pdf_merger.write(output_pdf)
pdf_merger.close()

# List of PDF files to merge
pdf_files = ["file_1", "files_2"]

if name == " main
merge_files (pdf_files)
print("PDFs merged successfully.")

👉@BookPython
👍5
Синхронизация или асинхронность? Раскрывая тайны сигналов Django

Django - популярный веб-фреймворк для Python-разработчиков, известный своей надежностью, гибкостью и безопасностью. Одной из особенностей Django является система сигналов. Сигналы позволяют разработчикам запускать определенные действия при наступлении определенных событий, например, при сохранении или удалении модели. Однако часто возникает путаница по поводу того, являются ли сигналы Django асинхронными или нет. В этой статье мы рассмотрим этот вопрос и обсудим компромиссы, связанные с использованием сигналов Django.

https://www.mattlayman.com/blog/2023/django-signals-async/

👉@BookPython
👍6
Django API + ReactJS курс

Django API + ЛОГИН / ЛОГАУТ И ПОЛУЧЕНИЕ ПОЛЬЗОВАТЕЛЯ [часть 6]
Django API + Регистрация пользователей [часть 5]
Django API + React Js & Redux Обработка ошибок [часть 4]
Django API + React Js & Redux фронтенд [часть 3]
Django API + React Js фронтенд [часть 2]
Django API + админка с нуля [за 10 минут]

источник

👉@BookPython
👍4👎21🤮1