💬 Open Source по-русски: путь к технологической независимости или обочина прогресса?
Для одних организаций open source является ключом к преодолению зависимости от иностранных вендоров и драйвером инноваций, для других — дырой в безопасности и обочиной технологического прогресса.
Мы хотим изучить текущее состояние и возможности открытого ПО в России. Пройдите опрос и помогите нам увидеть ситуацию глазами IT-профессионалов.
👉 Ссылка на опрос 👈
Прохождение займёт примерно 4 минуты
Для одних организаций open source является ключом к преодолению зависимости от иностранных вендоров и драйвером инноваций, для других — дырой в безопасности и обочиной технологического прогресса.
Мы хотим изучить текущее состояние и возможности открытого ПО в России. Пройдите опрос и помогите нам увидеть ситуацию глазами IT-профессионалов.
👉 Ссылка на опрос 👈
Прохождение займёт примерно 4 минуты
👍6🔥1
Смёрдженный пулл-реквест добавляет возможность отключить GIL для free-threaded сборок. Сделать это можно двумя способами:
▫️
PYTHON_GIL=0
▫️
-X gil=0
Предусмотрена также возможность повторного включения GIL.
Ранее разработчики Python предупреждали, что отключение GIL сломает некоторые части текущего кода.
«Мы ожидаем, что отключение GIL поначалу будет довольно глючным. Поэтому, даже если мы собираемся отключить GIL по умолчанию в версии 3.13, мы, вероятно, захотим, чтобы GIL оставался включённым по умолчанию какое-то время».
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤5
🐍🗺 Создавайте захватывающие интерактивные карты с помощью Python
В новой статье разберём библиотеку визуализации данных Plotly. Шаг за шагом научимся создавать и настраивать простые и интерактивные карты, а также работать с картами Хороплета— особым типом карт, в которых используется цветовое кодирование для обозначения данных по конкретным географическим областям, таким как страны, штаты или города.
🔗 Читать статью
🔗 Зеркало
В новой статье разберём библиотеку визуализации данных Plotly. Шаг за шагом научимся создавать и настраивать простые и интерактивные карты, а также работать с картами Хороплета
🔗 Читать статью
🔗 Зеркало
👍13❤3
Автор нового поста на «Хабре» рассуждает о том, зачем использовать аннотации типов и даёт ли это преимущество.
Аннотации типов были введены в Python в версии 3.5. Они помогают обозначать типы для переменных и функций. При этом они не обеспечивают проверку типов на уровне интерпретатора.
Вот так код на Python выглядит без аннотации типов:
def add(a, b):
return a + b
А вот так с аннотацией:
def add(a: int, b: int) -> int:
return a + b
🔗 Прочесть его мнение целиком можно здесь
А что вы думаете по этому поводу? Используете аннотацию типов в работе?
Please open Telegram to view this post
VIEW IN TELEGRAM
👏13👍9❤2🔥2😁1
🐍🎸 Курс Django. Часть 3: Основы работы с формами
В новой части курса разбираем основные методы создания, кастомного рендеринга и кастомной валидации форм.
🔗 Читать статью
🔗 Зеркало
➕ Предыдущие части:
Часть 1: Django — что это? Обзор и установка фреймворка, структура проекта
Часть 2: ORM и основы работы с базами данных
В новой части курса разбираем основные методы создания, кастомного рендеринга и кастомной валидации форм.
🔗 Читать статью
🔗 Зеркало
➕ Предыдущие части:
Часть 1: Django — что это? Обзор и установка фреймворка, структура проекта
Часть 2: ORM и основы работы с базами данных
❤11🔥6
📊 Визуализируем данные с помощью Seaborn
Это новый туториал от Real Python. В статье объясняется, как:
▫️установить и начать работать с Seaborn,
▫️какие типы графиков есть в библиотеке,
▫️что такое Seaborn Objects.
🔗 Ссылка на статью
Это новый туториал от Real Python. В статье объясняется, как:
▫️установить и начать работать с Seaborn,
▫️какие типы графиков есть в библиотеке,
▫️что такое Seaborn Objects.
🔗 Ссылка на статью
👍16❤3
Наверняка вы сталкивались с предупреждениями при исполнении программы. Чаще всего они говорят о том, что какие-то функции устарели. Но что если вам самим нужно создать такое предупреждение для потенциальных пользователей вашей программы?
☑️ Для этого в стандартной библиотеке 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
👍23❤6👾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 просит всех пользователей обновиться как можно быстрее.
🔗 Прочесть подробности
Команда 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🎉3❤2
✨Awesome Python✨
Это репозиторий со списком лучших библиотек и фреймворков для множества задач. Включает в себя такие подразделы:
🔸Инструменты командной строки
▫️pgcli — PostgreSQL CLI с подсветкой синтаксиса;
▫️doitlive — инструмент для проведения презентаций в терминале.
🔸Разработка игр
▫️Arcade — фреймворк для создания игр с графикой и звуком;
▫️Pygame — набор модулей для написания игр.
🔸Обработка изображений
▫️pillow — библиотека для преобразования изображений;
▫️scikit-image — библиотека для научной обработки изображений.
🔗 Другие библиотеки смотрите в репозитории
Это репозиторий со списком лучших библиотек и фреймворков для множества задач. Включает в себя такие подразделы:
🔸Инструменты командной строки
▫️pgcli — PostgreSQL CLI с подсветкой синтаксиса;
▫️doitlive — инструмент для проведения презентаций в терминале.
🔸Разработка игр
▫️Arcade — фреймворк для создания игр с графикой и звуком;
▫️Pygame — набор модулей для написания игр.
🔸Обработка изображений
▫️pillow — библиотека для преобразования изображений;
▫️scikit-image — библиотека для научной обработки изображений.
🔗 Другие библиотеки смотрите в репозитории
👍7❤4
Такой призыв в конце февраля выпустил 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-рассылку здесь
У нас есть еженедельная рассылка о последних открытиях и тенденциях в мире Python. Мы опубликовали новый выпуск на
Ниже — небольшая часть выпуска, а целиком читайте здесь 👈
Общемировой тренд — увеличение спроса на ИИ-разработчиков. И у Python-специалистов есть огромное преимущество — они без особых усилий могут переключиться с бэкенда на машинное обучение. Автор этой публикации рассказал, с чего проще всего начать — с изучения супервостребованной RAG-технологии.
🎩 Hatchet — эффективная альтернатива Celery
Hatchet — это новая система распределения задач для управления сложными процессами. Она позволяет создавать отказоустойчивые процессы, решающие проблемы параллелизма, справедливости распределения задач и ограничения скорости обработки. Обо всех преимуществах Hatchet читайте в рассылке.
🌐 Niquests — продвинутая альтернатива Requests
Новая библиотека лишена некоторых недостатков старой, а также имеет дополнительные фичи. Какие — подробно рассказываем в статье на vc.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍4🔥4
Forwarded from Библиотека задач по Python | тесты, код, задания
❤12👏2
🃏Harlequin — SQL IDE прямо в терминале
Как пишут авторы о библиотеке: «Функции, которые вы ожидаете от IDE, прекрасно работают прямо в вашем терминале». Среди этих функций перечисляют:
▫️Каталог данных. Позволяет видеть таблицы, столбцы и их типы.
▪️Редактор запросов.
▫️Окно для просмотра результатов (может вывести 1M+).
▪️Экспорт результатов и история запросов.
🔗 Ссылка на репозиторий
Как пишут авторы о библиотеке: «Функции, которые вы ожидаете от IDE, прекрасно работают прямо в вашем терминале». Среди этих функций перечисляют:
▫️Каталог данных. Позволяет видеть таблицы, столбцы и их типы.
▪️Редактор запросов.
▫️Окно для просмотра результатов (может вывести 1M+).
▪️Экспорт результатов и история запросов.
🔗 Ссылка на репозиторий
👍26🥱2🔥1👏1
🐍🚀 Niquests: новый стандарт HTTP-клиентов в Python, превосходящий Requests
Библиотека Requests долгое время была де-факто стандартом для HTTP-запросов в Python, но у неё есть ряд серьезных недостатков. Инновационная библиотека Niquests не только исправляет ошибки Requests, но и предлагает множество улучшений.
В новой статье рассказываем обо всех преимуществах Niquests.
🔗 Читать статью
🔗 Зеркало
Библиотека 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 могут иметь больше чем одно измерение.
🔗 Подробнее об этом можно прочесть в статье
Автор блога The Python Coding Stack объясняет, что такое массивы типа ndarray в NumPy и чем они отличаются от списков. Он отмечает, что:
▪️Из общего у ndarray и списков есть следующее: по ним можно итерироваться, они изменяемые.
▪️В списки вы можете положить объекты разных типов и они будут там храниться. Однако если попытаться провернуть такое с ndarray, то объекты разных типов преобразуются к одному (например, float).
▪️Использовать цикл for с ndarray в большинстве случаев бессмысленно. Массивы используют векторизацию, что позволяет им выполнять одну операцию на всех значениях сразу, вместо того чтобы выполнять её поэлементно. В результате ndarray работают намного быстрее, чем списки.
🔗 Подробнее об этом можно прочесть в статье
❤9🤔3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🐍🎩 Hatchet: новый король распределения задач, который затмит Celery
Ваша система распределения задач тормозит проект? Пора переходить на Hatchet! Этот инновационный менеджер очередей решает проблемы, с которыми не справляются устаревшие инструменты.
Hatchet позволяет создавать отказоустойчивые процессы, решающие проблемы параллелизма, справедливости распределения задач и ограничения скорости обработки.
👉Обо всех преимуществах Hatchet рассказали в статье👈
🔗 Зеркало
Ваша система распределения задач тормозит проект? Пора переходить на Hatchet! Этот инновационный менеджер очередей решает проблемы, с которыми не справляются устаревшие инструменты.
Hatchet позволяет создавать отказоустойчивые процессы, решающие проблемы параллелизма, справедливости распределения задач и ограничения скорости обработки.
👉Обо всех преимуществах Hatchet рассказали в статье👈
🔗 Зеркало
🔥12❤🔥4🥱3
💬 Чем вы в основном занимаетесь после работы в свободное от питона время?
❤️ — смотрю сериалы/фильмы, читаю книги, сижу в соцсетях
👍 — занимаюсь домашними делами: убираюсь, готовлю, провожу время с детьми
🥰 — работаю над пет-проектами
🔥 — занимаюсь спортом/хобби
🤔 — а я вообще не уверен, что у меня есть свободное время
👇 Пишите в комментариях собственные варианты
#интерактив
❤️ — смотрю сериалы/фильмы, читаю книги, сижу в соцсетях
👍 — занимаюсь домашними делами: убираюсь, готовлю, провожу время с детьми
🥰 — работаю над пет-проектами
🔥 — занимаюсь спортом/хобби
🤔 — а я вообще не уверен, что у меня есть свободное время
👇 Пишите в комментариях собственные варианты
#интерактив
🤔68❤54👍26🔥26🥰11😁1
Основы программирования на Python
Курс для тех, кто хочет начать свою карьеру в IT и научится программировать на одном из самых востребованных языков.
Начните обучение с вводных занятий – https://proglib.io/w/3fb35fb3
Вводные занятия содержат:
– лекцию по условным инструкциям if/else и зачем они нужны;
– лекцию по операциями с целыми и вещественными числами;
– практические задания для закрепления материала, которые научат работать с условными операторами и создавать вложенные инструкции.
👉 Переходите на страницу и активируйте доступ к вводным занятиям: https://proglib.io/w/3fb35fb3
Курс для тех, кто хочет начать свою карьеру в IT и научится программировать на одном из самых востребованных языков.
Начните обучение с вводных занятий – https://proglib.io/w/3fb35fb3
Вводные занятия содержат:
– лекцию по условным инструкциям if/else и зачем они нужны;
– лекцию по операциями с целыми и вещественными числами;
– практические задания для закрепления материала, которые научат работать с условными операторами и создавать вложенные инструкции.
👉 Переходите на страницу и активируйте доступ к вводным занятиям: https://proglib.io/w/3fb35fb3
❤6👍2🔥1
Forwarded from Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
🧠🤖 Как создать память для вашего чат-бота на Python с
помощью графов знаний
Хотите, чтобы ваш чат-бот давал более точные и релевантные ответы, избегая «галлюцинаций»? Графы знаний в помощь!
В статье и туториале разбираем, что такое графы и как создать память на примере данных из Википедии.
🔗 Читать статью
🔗 Зеркало
помощью графов знаний
Хотите, чтобы ваш чат-бот давал более точные и релевантные ответы, избегая «галлюцинаций»? Графы знаний в помощь!
В статье и туториале разбираем, что такое графы и как создать память на примере данных из Википедии.
🔗 Читать статью
🔗 Зеркало
👍9😁2🤔2🔥1
🐍⚙️ Rust vs Python: битва титанов в мире программирования
Выбор подходящего языка программирования для проекта — важное решение для разработчиков. Необходимо учитывать такие факторы, как поддержка сообщества, простота использования и производительность.
В новой статье сравниваем Rust и Python: рассматриваем ключевые особенности, преимущества и недостатки.
🔗 Читать статью
🔗 Зеркало
Выбор подходящего языка программирования для проекта — важное решение для разработчиков. Необходимо учитывать такие факторы, как поддержка сообщества, простота использования и производительность.
В новой статье сравниваем Rust и Python: рассматриваем ключевые особенности, преимущества и недостатки.
🔗 Читать статью
🔗 Зеркало
🥱17❤7👍6❤🔥3🤔3