Библиотека питониста | Python, Django, Flask
40.4K subscribers
2.79K photos
75 videos
51 files
4.37K links
Все самое полезное для питониста в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Курс по ML: https://cl

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
加入频道
🐍🎸 Курс Django. Часть 3: Основы работы с формами

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

🔗 Читать статью
🔗 Зеркало

Предыдущие части:
Часть 1: Django — что это? Обзор и установка фреймворка, структура проекта
Часть 2: ORM и основы работы с базами данных
11🔥6
📊 Визуализируем данные с помощью Seaborn

Это новый туториал от Real Python. В статье объясняется, как:
▫️установить и начать работать с Seaborn,
▫️какие типы графиков есть в библиотеке,
▫️что такое Seaborn Objects.

🔗 Ссылка на статью
👍163
⚠️ Как работать с предупреждениями (warnings) в Python

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

☑️ Для этого в стандартной библиотеке Python есть модуль warnings. Создать предупреждение с его помощью очень легко:
import warnings
warnings.warn("Something wrong!")


Этот код выведет следующее: <ipython-input-2-f9c3380a9245>:2: UserWarning: Something wrong!
warnings.warn("Something wrong!")


Вы можете самостоятельно выбрать тип предупреждения вместо типа по умолчанию UserWarning:
warnings.warn("Oops!", category=RuntimeWarning)


✍️ Также в warnings есть контекстный менеджер для временного подавления предупреждений:
with warnings.catch_warnings():
warnings.simplefilter("ignore")
warnings.warn("Something wrong!")


В менеджере контекста все предупреждения просто игнорируются, что может пригодиться в некоторых случаях.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍236👾3🥰1
Обновите Django: вышли патчи безопасности

Команда Django выпустила Django 5.0.3, Django 4.2.11 и Django 3.2.25. Эти релизы закрывают дыру в безопасности, которая была найдена ранее.

Речь идёт о проблеме CVE-2024-27351, которая позволяла провести атаку типа «отказ в обслуживании», вызванную регулярным выражением. Уязвимость касалась метода django.utils.text.Truncator.words() (при использовании параметра html=True) и фильтра шаблона truncatewords_html. При обработке специальной строки, которая подаётся на вход этому методу или фильтру, может возникнуть чрезмерное потребление ресурсов системы из-за особенностей работы регулярных выражений.

Команда Django просит всех пользователей обновиться как можно быстрее.

🔗 Прочесть подробности
👍18🎉32
Awesome Python

Это репозиторий со списком лучших библиотек и фреймворков для множества задач. Включает в себя такие подразделы:
🔸Инструменты командной строки
▫️pgcli — PostgreSQL CLI с подсветкой синтаксиса;
▫️doitlive — инструмент для проведения презентаций в терминале.
🔸Разработка игр
▫️Arcade — фреймворк для создания игр с графикой и звуком;
▫️Pygame — набор модулей для написания игр.
🔸Обработка изображений
▫️pillow — библиотека для преобразования изображений;
▫️scikit-image — библиотека для научной обработки изображений.

🔗 Другие библиотеки смотрите в репозитории
👍74
🇺🇸 Белый дом призвал переходить на языки, обеспечивающие безопасную работу с памятью (как Python)

Такой призыв в конце февраля выпустил Office of the National Cyber Director (ONCD). Утверждается, что использование определённых языков программирования устраняет целый класс уязвимостей.

В самом пресс-релизе ONCD нет прямого указания на Python, однако ранее Cybersecurity and Infrastructure Security Agency (CISA) опубликовал список языков, обеспечивающих безопасную работу с памятью, и в него был включён Python. Помимо него в перечне есть C#, Go, Java, Rust и Swift.
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍2
🐍 Итоги недели в мире Python и обзоры новых инструментов

У нас есть еженедельная рассылка о последних открытиях и тенденциях в мире Python. Мы опубликовали новый выпуск на 📰.

Ниже — небольшая часть выпуска, а целиком читайте здесь 👈

😏 Мнение: пора переключаться с бэкенда на ИИ

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

🎩 Hatchet — эффективная альтернатива Celery

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

🌐 Niquests — продвинутая альтернатива Requests

Новая библиотека лишена некоторых недостатков старой, а также имеет дополнительные фичи. Какие — подробно рассказываем в статье на vc.

Вы можете подписаться на email-рассылку здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍4🔥4
🃏Harlequin — SQL IDE прямо в терминале

Как пишут авторы о библиотеке: «Функции, которые вы ожидаете от IDE, прекрасно работают прямо в вашем терминале». Среди этих функций перечисляют:

▫️Каталог данных. Позволяет видеть таблицы, столбцы и их типы.
▪️Редактор запросов.
▫️Окно для просмотра результатов (может вывести 1M+).
▪️Экспорт результатов и история запросов.

🔗 Ссылка на репозиторий
👍26🥱2🔥1👏1
🐍🚀 Niquests: новый стандарт HTTP-клиентов в Python, превосходящий Requests

Библиотека Requests долгое время была де-факто стандартом для HTTP-запросов в Python, но у неё есть ряд серьезных недостатков. Инновационная библиотека Niquests не только исправляет ошибки Requests, но и предлагает множество улучшений.

В новой статье рассказываем обо всех преимуществах Niquests.

🔗 Читать статью
🔗 Зеркало
8👍8🤔3
🔢 Зачем использовать ndarray из NumPy вместо списков Python

Автор блога The Python Coding Stack объясняет, что такое массивы типа ndarray в NumPy и чем они отличаются от списков. Он отмечает, что:
▪️Из общего у ndarray и списков есть следующее: по ним можно итерироваться, они изменяемые.
▪️В списки вы можете положить объекты разных типов и они будут там храниться. Однако если попытаться провернуть такое с ndarray, то объекты разных типов преобразуются к одному (например, float).
▪️Использовать цикл for с ndarray в большинстве случаев бессмысленно. Массивы используют векторизацию, что позволяет им выполнять одну операцию на всех значениях сразу, вместо того чтобы выполнять её поэлементно. В результате ndarray работают намного быстрее, чем списки.

Кстати, nd в названии ndarray означает n-dimensional, то есть объекты ndarray могут иметь больше чем одно измерение.

🔗 Подробнее об этом можно прочесть в статье
9🤔3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🐍🎩 Hatchet: новый король распределения задач, который затмит Celery

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

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

👉Обо всех преимуществах Hatchet рассказали в статье👈
🔗 Зеркало
🔥12❤‍🔥4🥱3
💬 Чем вы в основном занимаетесь после работы в свободное от питона время?

❤️ — смотрю сериалы/фильмы, читаю книги, сижу в соцсетях
👍 — занимаюсь домашними делами: убираюсь, готовлю, провожу время с детьми
🥰 — работаю над пет-проектами
🔥 — занимаюсь спортом/хобби
🤔 — а я вообще не уверен, что у меня есть свободное время

👇 Пишите в комментариях собственные варианты

#интерактив
🤔6854👍26🔥26🥰11😁1
Основы программирования на Python

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

Начните обучение с вводных занятий – https://proglib.io/w/3fb35fb3

Вводные занятия содержат:

– лекцию по условным инструкциям if/else и зачем они нужны;
– лекцию по операциями с целыми и вещественными числами;
– практические задания для закрепления материала, которые научат работать с условными операторами и создавать вложенные инструкции.

👉 Переходите на страницу и активируйте доступ к вводным занятиям: https://proglib.io/w/3fb35fb3
6👍2🔥1
🧠🤖 Как создать память для вашего чат-бота на Python с
помощью графов знаний


Хотите, чтобы ваш чат-бот давал более точные и релевантные ответы, избегая «галлюцинаций»? Графы знаний в помощь!

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

🔗 Читать статью
🔗 Зеркало
👍9😁2🤔2🔥1
🐍⚙️ Rust vs Python: битва титанов в мире программирования

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

В новой статье сравниваем Rust и Python: рассматриваем ключевые особенности, преимущества и недостатки.

🔗 Читать статью
🔗 Зеркало
🥱177👍6❤‍🔥3🤔3
💪 Что не так с MVP: как создать конкурентоспособный продукт

Традиционная концепция MVP нуждается в пересмотре — авторы предлагают альтернативный подход, основанный на тесном взаимодействии с целевой аудиторией и непрерывных итерациях для создания действительно ценного продукта.

👉 Читать статью
👉 Зеркало
🔥11👍6
🐍🎸 Курс Django: Сложная форма с кастомной капчей

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

🔗 Читать статью
🔗 Зеркало

Предыдущие части:
Часть 1: Django — что это? Обзор и установка фреймворка, структура проекта
Часть 2: ORM и основы работы с базами данных
Часть 3: Основы работы с формами
❤‍🔥12👍62
📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих»

Мы написали и собрали для вас в одну подборку все 25 глав и 230 практических заданий!

🐍 Часть 1: Особенности, сферы применения, установка, онлайн IDE
🐍 Часть 2: Все, что нужно для изучения Python с нуля – книги, сайты, каналы и курсы
🐍 Часть 3: Типы данных: преобразование и базовые операции
🐍 Часть 4: Методы работы со строками
🐍 Часть 5: Методы работы со списками и списковыми включениями
🐍 Часть 6: Методы работы со словарями и генераторами словарей
🐍 Часть 7: Методы работы с кортежами
🐍 Часть 8: Методы работы со множествами
🐍 Часть 9: Особенности цикла for
🐍 Часть 10: Условный цикл while
🐍 Часть 11: Функции с позиционными и именованными аргументами
🐍 Часть 12: Анонимные функции
🐍 Часть 13: Рекурсивные функции
🐍 Часть 14: Функции высшего порядка, замыкания и декораторы
🐍 Часть 15: Методы работы с файлами и файловой системой
🐍 Часть 16: Регулярные выражения
🐍 Часть 17: Основы скрапинга и парсинга
🐍 Часть 18: Основы ООП – инкапсуляция и наследование
🐍 Часть 19: Основы ООП – абстракция и полиморфизм
🐍 Часть 20: Графический интерфейс на Tkinter
🐍 Часть 21: Основы разработки игр на Pygame
🐍 Часть 22: Основы работы с SQLite
🐍 Часть 23: Основы веб-разработки на Flask
🐍 Часть 24: Основы работы с NumPy
🐍 Часть 25: Основы анализа данных с Pandas
👍26🔥8❤‍🔥41😁1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
📈 По просьбе подписчиков «Библиотеки программиста» мы провели опрос и выяснили, что у большинства айтишников зарплата в 2023 году выросла.

⚡️ Как выглядит доход среднего айтишника и какие факторы окажут влияние на динамику ИТ-зарплат в 2024 году — расскажем в статье на VC.

👉 Читать

P. S. Свои предложения для исследований пишите в комменты👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥31🤔1🥱1