Python Portal
56K subscribers
2.19K photos
250 videos
51 files
714 links
Всё самое интересное из мира Python

Связь: @devmangx

РКН: https://clck.ru/3GMMF6
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Чёрт, не верится, что этот инструмент бесплатный и с открытым исходником 🤯

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

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

Обязательная штука для разработчиков, дизайнеров, контент-мейкеров, короче, для всех, кто работает с файлами :)

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥11🏆63
Совет по Python:

Кортежи - неизменяемые, то есть их нельзя менять.
Точнее говоря, сам кортеж - его длина и ссылки на объекты не могут изменяться.

Но если внутри кортежа лежит ссылка на изменяемый объект, этот объект можно менять.

>>> a = (10, ["S","u","m","m","e" ,"r"], "abc")

>>> a[1] = ["S","u","m","m","e" ,"r", "Mode"]
TypeError: 'tuple' object does not support item assignment

>>> a[1].append("Mode")
>>> a
(10, ['S', 'u', 'm', 'm', 'e', 'r', 'Mode'], 'abc')


👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3612🤯2
This media is not supported in your browser
VIEW IN TELEGRAM
Stack Overflow не умер, он делает мощный камбэк

Да, наш любимый Stack Overflow, где мы все когда-то искали ответы на «почему не работает мой код», снова в игре. Они запустили Stack Overflow AI

На первый взгляд это может напоминать ChatGPT или другие AI-инструменты, но ключевое отличие в том, что он работает на базе огромной базы знаний разработчиков, которую Stack Overflow собирал годами

Похоже, Stack Overflow снова нашёл способ быть незаменимым. 🩷

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7724🔥10😁2👀1
This media is not supported in your browser
VIEW IN TELEGRAM
Художник показал эволюцию глубокого обучения в честь Нобелевской премии Джеффри Хинтона

В сети появилась анимация “Evolution of Deep Learning by Hand” - творческая работа, посвящённая ключевым идеям, которые Джеффри Хинтон внёс в развитие глубокого обучения. Автор вручную нарисовал эволюцию концепций, лежащих в основе современных нейросетей, в знак признания вклада Хинтона, недавно удостоенного Нобелевской премии.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍7
А случайно ли это было?

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥55😁299
Media is too big
VIEW IN TELEGRAM
Разработчик представил собственный open-source клон NotebookLM, который способен обрабатывать мультимодальные данные, собирать знания из разных источников и даже генерировать подкасты.

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

Функциональность впечатляет:

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

Весь проект полностью открытый и доступен на GitHub, а сборка работает локально, без облачных зависимостей.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍157🌭3🤔1
Как работать с requirements.txt и не запутаться в зависимостях

Когда Python-проект разрастается, в нём появляется десятки библиотек. Чтобы не ставить их вручную и не ломать окружение, используется файл requirements.txt - список всех зависимостей проекта.

Чтобы сохранить список установленных библиотек, достаточно одной команды:

pip freeze > requirements.txt


Она выгрузит все текущие пакеты и их версии в requirements.txt.

Чтобы развернуть проект на другой машине или сервере, выполняем:

pip install -r requirements.txt


Все нужные пакеты установятся автоматически — с нужными версиями.

В requirements.txt можно указывать версии библиотек по-разному:

numpy==1.21.0     # строгая версия  
pandas>=1.3.0 # версия не ниже указанной
requests # установится последняя


И не забывай: комментарии начинаются с #.

# Основные зависимости
numpy==1.21.0
pandas>=1.3.0

# Для тестов
pytest


Если проект большой то можно разбить зависимости:

# requirements.txt
-r base.txt
-r dev.txt


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

Чтобы зафиксировать версии пакетов без прямого указания в основном файле, можно использовать constraints.txt:

pip install -r requirements.txt -c constraints.txt


Пример:

requirements.txt:

numpy==1.21.0
pandas


constraints.txt:

pandas<=1.3.5


Для разных задач - свои зависимости:

requirements-dev.txt     # разработка  
requirements-test.txt # тесты
requirements-prod.txt # продакшен


Пример:

pip install -r requirements-dev.txt


Чтобы подтянуть свежие версии библиотек:

pip install --upgrade -r requirements.txt


Всегда изолируй зависимости:

python -m venv venv
source venv/bin/activate # macOS/Linux
venv\Scripts\activate # Windows
pip install -r requirements.txt


👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍11🔥9💊1
This media is not supported in your browser
VIEW IN TELEGRAM
Визуальное объяснение интеграла

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
10🤔8🔥4👍1