ViperIDE для MicroPython
Для пользователей облегчённой версии Python есть годная среда разработки, причём с веб-интерфейсом и привычными для любой IDE вещами вроде подсветки синтаксиса, эмулятором девайсов и проч. Как вишенка — мобильная (!) версия.
🌭 — никогда не юзал MicroPy
⚡ — полезно
Репозиторий проекта
#библиотека
@zen_of_python
Репозиторий проекта
#ide
@zen_of_python
Вопрос от подписчика
Задаёт @Tenessy:
«К какой архитектуре backend приложений нужно стремиться? есть какие то гайды?»
NB! Пожалуйста, будьте взаимовежливы. Всем нам порой нужно место, где можно попросить помощи.
#обсуждение
@zen_of_python
В Python могли встроить вирус. Все из-за утечки админского токена языка через публичный Docker-контейнер
В мире программирования произошла одна из самых опасных ошибок за последнее время. И все из-за невнимательности одного из разработчиков: https://tproger.ru/news/v-python-mogli-vstroit-virus--vse-iz-za-utechki-adminskogo-tokena-yazyka-cherez-publichnyj-docker-kontejner
#python
Задача о Р̶о̶с̶с̶т̶а̶т̶е̶ зарплатах
Вам дан массив уникальных целых чисел, где salary[i] — это зарплата i-го сотрудника.
Напишите функцию, которая вернёт среднюю зарплату сотрудников без учёта минимальной и максимальной зарплаты.
Для теста:>>> salaries = [4000,3000,1000,2000]
>>> get_mean_salary(salaries)
... 2500
#задача
@zen_of_python
Какие редкие либы Python вас удивили в последний год? Кто внезапно стал «убийцей» того или иного популярного решения? Поделитесь в комментариях.
От админа: недавно верстали статью про популярные либы для Django, вышло довольно баяново. Вот и стало интересно, кто чем вдохновлялся в последнее время.
#обсуждение
@zen_of_python
Скидываем кепки на прохожих под окном
Дикий пет-проект: житель Нью-Йорка, дата-сайентист скидывает на головы ньюйоркцев пропеллерную кепку (для защиты от солнца, конечно). Под капотом — Raspberry Pi, cv2, digitalio, paramiko и проч. Если ничего нового для себя не откроете, то точно покекаете от души.
Подробнее
#пет_проект
@zen_of_python
whenever | Работа с datetime без боли
Авторы библиотеки заявляют, что этот инструмент избавит от боли обращения с временным типом данных. Какой бы тип (type aware / naive) ни был в коде, в IDE подсветятся проблемы при наличии. Поддерживает deltas (вычитание из переменной минут / часов и проч.), расширенные трейсбеки и проч.
🌭 — datetime не является болью для меня
⚡ — больно, потому прикручиваю нечто подобное
☃️ — будучи юнцом, не сталкивался пока
Репозиторий проекта
#библиотека
@zen_of_python
Вышел psycopg 3.2
Обновился популярнейший PostgreSQL-клиент для Python:
— прокачано хранение скаляров Numpy (простых чисел как элементов более сложных структур);
— для интерполяции теперь можно использовать не только %s
, но и $1
(родной для PSQL формат);
— поддержка новых фичей libpq (библиотека, на которой сидит psycopg) — асинхронная отмена запросов и проч.
Подробнее
@zen_of_python
Поздравляем победителей
Задачу о счастливом числе верно решили:
— @Metimol;
— @longcompetition;
— Sergey;
— @xpos587;
— @vsugoyak;
Кратчайшее верное решение предложил @vsugoyak:def find_luckiest_number(matrix):
return ls[0] if len(ls:=[mn for arr in matrix if (mn:=min(arr)) == max(matrix[el][arr.index(mn)] for el in range(len(matrix)))])>0 else None
Отдельный респект @longcompetition за решения с учётом временной сложности алгоритма. Самое то для новичков в этой теме.
#задача
@zen_of_python
JOY OF PROGRAMMING | Полноценная игра на Steam для изучающих Python
В ней нужно писать настоящий код, чтобы автоматизировать машины, роботов, дронов и другую технику. Внутри годное обучение, которое дословно объясняет, что нужно делать. Отзывы очень положительные: геймеры пишут, что игра реально затягивает, но порой бывает сложно.
Профиль игры на Steam
#факты
🌭 — не люблю игры про программирование
⚡— обожаю такое (напишите в комментариях, какая игра зацепила)
@zen_of_python
Прокрутка страницы в Selenium
Если вы хотите получить доступ к контенту ниже видимой части веб-страницы или захватить то, что подгружается после скролла, в популярной скрейпинг-библиотеке Selenium используются возможности JavaScript:driver.execute_script("window.scrollBy(0,500)","")
Подробнее
#парсинг
@zen_of_python
Сдружили Vue и Django
20-минутный туториал от Python-разработчика (на английском), в котором Vue отвечает на фронтенд, Django — за бэкенд. Также реализована авторизация без токенов / DRF / JWT.
#фреймворк
@zen_of_python
PyPiScout.com | Ищем либу по текстовому запросу
Видимо, недовольные поисковиком на pypi.org питонисты создали сайт, где инструмент под любую задачу можно найти с помощью запроса на естественном человеческом. На картинке видно интересное представление результатов — scatterplot-диаграмма, причём самый близкий результат получает увеличенный размер точки.
#факты
@zen_of_python
30 самых полезных библиотек Python для веб-разработки в 2024 году
Проверенный и актуальный инструментарий для веб-разработки — большая часть того, что нужно для грамотного сайта.
Статья от владельца сайта на Django
Python без GIL: где попробовать
В версии 3.13 заядлых питонистов обрадовали возможностью отключить GIL (Global Interpreter Lock). Эта фича предотвращает одновременное выполнение нескольких потоков, что из года в год вызывает бурю возмущения от искушённых многопоточностью Go / Java и иже с ними.
На py-free-threading.github.io излагают и про установку такого CPython, и про совместимость, и про портирование модулей.
Подробнее про free-threaded Python
#факты
@zen_of_python
Поздравляем победителей
Задачу о повороте матрицы верно решили:
— @Python3k;
— @erg_y;
— @vsugoyak.
Кратчайшее верное решение предложил @vsugoyak:def turn_matrix(grid, k):
return [[grid[(place:=(_n+(n:=len(grid[0]))*_m-k))%(n*len(grid))//n][place%n] for _n in range(len(grid[0]))] for _m in range(len(grid))]
#задача
@zen_of_python
open-interpreter | Управление компьютером с помощью естественного языка
Python-библиотека, которая позволяет управлять ПК с помощью обычной челочеческой речи, в том числе на русском. На видео переключаются со светлой темы на тёмную, конвертируют docx-файлы на рабочем столе в .pdf.
Репозиторий проекта
Интерактивная демка в Colab
#llm #библиотека
Вопросы новичков
Zen of Python поддерживает новоприбывших в особой рубрике. Как это работает:
— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;
#вопросыновичков
@zen_of_python
amphi-etl | Low-code-аналог Airflow
Инструмент позволяет генерировать Py-сниппеты и укладывать их в пайплайны. Знает, как без кода обратиться к pandas, DuckDB, LangChain. Есть расширение для Jupyter. Запускается простой командой:amphi start
Интересно, сколько лет ему потребуется, чтобы дорасти до обкатанности Airflow?
Репозиторий проекта
#библиотека
@zen_of_python
Квиз по веб-скрейпингу
Проверьте свои познания по парсингу веб-сайта с помощью квиза про строковые методы и регулярные выражения для анализа HTML DOM. На все уйдет около 10 минут.
Перед прохождением рекомендуе освежить память с помощью этого гайда.
#квиз
@zen_of_python
julius.ai | Новая степень автоматизации EDA
Бомбическая условно бесплатная нейронка на видео съедает таблицу с кандидатами из HeadHunter на 6,5К (!) строк, фильтрует её от всех неразработчиков и затем строит группированную столбчатую диаграмму по грейдам (Junior, Middle, Senior) и языкам (Go, PHP, Python etc.).
#llm #gpt
@neuro_channel
Задача о повороте матрицы
На входе матрица grid
размером m x n
и целое число k
. Вам нужно «сдвинуть» матрицу k раз.
За один поворот:
— Элемент grid[i][j]
становится на место grid[i][j + 1]
;
— Элемент grid[i][n - 1]
становится grid[i + 1][0]
;
— Элемент grid[m - 1][n - 1]
становится на grid[0][0]
.
Создайте функцию turn_matrix(), которая сдвинет исходную матрицу k раз.
>>> grid = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> turn_matrix(grid, k)
... [[9, 1, 2], [3, 4, 5], [6, 7, 8]]
Вопрос подписчика
Задает @pries_offed:
«Какие есть способы оптимизации, чтобы приблизить производительность кода к C/C++?»
NB! Пожалуйста, будьте взаимовежливы. Всем нам порой нужно место, где можно попросить помощи.
#обсуждение
@zen_of_python
Вопрос подписчика
Задаёт @Shohjahonmurodov:
«У кого есть опыт работы с библиотекой simple-jwt для аутентификации? вот аутентификацию сделал, теперь нужно настроить login logout с помощью отдельного модуля. Можете помочь?»
От админа: полагаю, в документации вы уже были, что именно вызывает затруднения?
NB! Пожалуйста, будьте взаимовежливы. Всем нам порой нужно место, где можно попросить помощи.
#обсуждение
@zen_of_python
У AvitoTech грядёт новый НЕмитап про локальную разработку
Обещают рассказать про то, как, зачем и какие инструменты создают для своих инженеров.
Смотреть онлайн и общаться с автором доклада в live-чате: https://tprg.ru/5qWO
Почитать перед просмотром:
Lima: Linux Machines — запуск виртуальных машин Linux на Mac OS.
Colima — управление контейнерами Docker на MacOS и Linux.
K3s — дистрибутив Kubernetes для установки и запуска на ресурсоограниченных средах.
MacOS Virtualization Framework — документация по виртуализации от Apple.
Это #партнёрский пост