Zen of Python
20.1K subscribers
1.21K photos
161 videos
32 files
3.15K links
Полный Дзен Пайтона в одном канале

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/xZOL
Download Telegram
😁19
Задача о расстоянии между массивами

На входе два массива arr1 и arr2 и целое число d. Напишите функцию find_arr_distance(), которая вернёт расстояние между двумя массивами.

Расстояния определяется как количество элементов arr1[i] таких, что не существует элемента arr2[j], где arr1[i] - arr2[j]| <= d.

Для проверки:


>>> arr1 = [4,5,8],
>>> arr2 = [10,9,1,8]
>>> d = 2
>>> find_arr_distance(arr1, arr2, d)
... 2


Объяснение:

Для arr1[0]=4 имеем:
|4-10|=6 > d=2
|4-9|=5 > d=2
|4-1|=3 > d=2
|4-8|=4 > d=2

Для arr1[1]=5 имеем:
|5-10|=5 > d=2
|5-9|=4 > d=2
|5-1|=4 > d=2
|5-8|=3 > d=2

Для arr1[2]=8 имеем:
|8-10|=2 <= d=2
|8-9|=1 <= d=2
|8-1|=7 > d=2
|8-8|=0 <= d=2

#задача

@zen_of_python
1
​​vectorlite | SQLite как векторное хранилище

Это было вопросом времени: если вы сталкивались с прикруткой своей базы знаний к GPT, то знаете, что такое векторное хранилище (FAISS, Pinecone).

Китайцы подгадали потребность разработчиков RAG и запилили решение, которое in-place преобразует обычные SQL-таблицы в вектора. Браво. Ждём, когда крупные компании — разработчики БД «зашерлочат» (заберут себе) эту замечательную фичу.

Репозиторий проекта

#библиотека

@zen_of_python
​​Вопрос подписчика

Задаёт @swell_d:

«есть здоровое приложение на flask. хочу собрать контейнер docker так, чтобы не было доступа к исходному коду приложения. попробовал скомпилировать pyc и удалить py - ничего не вышло. куда копать?»

NB! Пожалуйста, будьте взаимовежливы. Всем нам нужна возможность выговориться и попросить помощи без угрозы быть затроленным.

#обсуждение

@zen_of_python
1👍1
Поздравляем победителей

Задачу о зарплатах верно решили:

@mad_shamann;
@Python3k;
@GeorKu;
@vsugoyak.

Самое краткое верное решение предложил @vsugoyak:


def get_mean_salary(salaries):
  return int(sum(srt_tr:=(srt:=sorted(salaries))[srt.count(srt[0]):-srt.count(srt[-1])])/len(srt_tr))


NB! Многие предложенные решения не прошли проверку, поскольку в списке зарплат возможны повторы, что искажает вычисление среднего.

Отдельный респект @Python3k за решение, учитывающее алгоритмическую сложность. И @GeorKu за неявную ситуацию с повтором зарплат в списке.

@zen_of_python
🍾4👍2
Графики с аннотациями на канвасе

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


gg.annotate(
'text',
x=exceeds100 + 2, y=5000 - 600,
label='Total coal production first\nexceeds 100 million tonnes\nper year.',
color=text_col,
family=body_font,
ha='left',
size=9,
va='top'
)


#факты

@zen_of_python
3
​​Какой шрифт лучше подойдёт для программирования?

Забавный полуразвлекательный квиз с realpython.com (на английском, состоящий из 12 вопросов и рассчитанный на 10 минут. Узнаете кое-что новое про свои визуальные потребности в IDE.

🌭 — мне достаточно дефолтного шрифта в любой IDE
🌚 — выбираю свой (напишите, какой шрифт любите)

#квиз

@zen_of_python
🌭26🌚7
This media is not supported in your browser
VIEW IN TELEGRAM
Loki | Факт-чекинг

Это и подобные решения заиграли новым красками, когда GPT стали галлюцинировать. Библиотека «обернётся» вокруг вывода нейросети и укажет, где правда, а где ложь. Из топа самых актуальных решений 2024 года, несомненно.

#библиотека

@zen_of_python
👍2
​​Вопрос подписчика

Задает @webstriker:

«Какая библиотека подходит для запуска LLM на потребительской видеокарте для генерации текста в том же Jupyter Notebook? Llama cpp, Tensor rt или что то еще?»

NB! Пожалуйста, будьте взаимовежливы. Всем нам нужна возможность выговориться и попросить помощи без угрозы быть затроленным.

#обсуждение

@zen_of_python
4
Forwarded from Нейроканал
​​Бенчмарк pandas vs. vaex vs. polars

Разработчик Дмитрий Руденко сравнил три решения для обработки данных в разрезах производительности и расходования памяти. Получилось очень доступно, даже новички поймут. NB! Для просмотра статьи на Medium вам потребуется VPN.

Спасибо подписчику @Pik_rat за рекомендацию.

@neuro_channel
👍9
diagrams | Визуализируем архитектуру с помощью кода

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


with Diagram("Simple Web Service with DB Cluster", show=False):
dns = Route53("dns")
web = ECS("service")

with Cluster("DB Cluster"):
db_primary = RDS("primary")
db_primary - [RDS("replica1"),
RDS("replica2")]

dns >> web >> db_primary


Репозиторий проекта

#библиотека

@zen_of_python
🔥7👍2😁1
​​Вопросы новичков

Zen of Python поддерживает новоприбывших в особой рубрике. Как это работает:

— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;

#вопросыновичков

@zen_of_python
👍4
Если бы у питонистов был свой покровитель, как его звали? Святой Социопатрик. Поделитесь в комментариях.

#кек

@zen_of_python
😁13
🤣21👍41💯1😎1
Минутка полезных мемов на Zen of Python

Меню вверху / Среда выполнения / Сменить среду выполнения. Чтобы не слить на k-Means слишком много времени, как админ.

#факт

@zen_of_python
1
Задача о Рокфеллере

Вам дан тензор с суммами на счетах, где account[i][j] — это сумма денег, которую имеет i​​​​​​​​​​-й​​​ клиент в j​​​​​​​-м банке.


accounts = [[1,2,5],[3,6,1]]
У 1-го клиента два счета на сумму 4 (1 + 3)
У 2-го — 8 (2 + 6)
У 3-го — 6 (5 + 1)


Напишите функцию find_richest(), которая найдет Рокфеллера — самого богатого клиента.

Для проверки:


>>> accounts = [[1,2,5],[3,6,1]]
>>> find_richest(accounts)
... 2


#задача

@zen_of_python
🔥4👍1🍌1
А внизу якобы простолюдины, пишущие на «медленных» языках
🍌21
Forwarded from IT Юмор
​​Как себя ощущает «плюсовик» когда ускорил программу на 100 наносекунд:
🍌8👍3🌚3😍1😘1
​​Вопрос подписчика

Задаёт @Tuburetka:

«Подскажите с чего начать учить пайтон? И где можно практиковаться?»

NB! Пожалуйста, будьте взаимовежливы. Всем нам нужно место, где можно получить поддержку.

От админа: подписчики привнесли в мою жизнь годнейший YouTube-канал @selfedu. Он на русском, там и про основы Py, и про Django, и проч.

#обсуждение

@zen_of_python