This media is not supported in your browser
VIEW IN TELEGRAM
Один One Day Offer вам или целых три — всем? 😉
25 октября Сбер проведёт сразу три экспресс-отбора кандидатов в две команды: GigaData и Kandinsky. Чем вам предстоит заниматься 👇
✔️ Развивать GigaData — внутреннюю платформу Сбера, которая обрабатывает петабайты данных и миллиарды запросов в сутки. One Day Offer для Python‑разработчиков.
✔️ Работать над Kandinsky — обучать большие модели с нуля, собирать и подготавливать данные, исследовать самые эффективные методы дообучения моделей.
— One Day Offer для Machine Learning Engineers с опытом в Deep Learning и компьютерном зрении (CV).
— One Day Offer для Research и Deep Learning Engineers.
Выбирайте то, что больше подходит под ваши навыки, и регистрируйтесь на One Day Offer!
25 октября Сбер проведёт сразу три экспресс-отбора кандидатов в две команды: GigaData и Kandinsky. Чем вам предстоит заниматься 👇
✔️ Развивать GigaData — внутреннюю платформу Сбера, которая обрабатывает петабайты данных и миллиарды запросов в сутки. One Day Offer для Python‑разработчиков.
✔️ Работать над Kandinsky — обучать большие модели с нуля, собирать и подготавливать данные, исследовать самые эффективные методы дообучения моделей.
— One Day Offer для Machine Learning Engineers с опытом в Deep Learning и компьютерном зрении (CV).
— One Day Offer для Research и Deep Learning Engineers.
Выбирайте то, что больше подходит под ваши навыки, и регистрируйтесь на One Day Offer!
❤2👍1
🧩 sync-with-uv
Небольшой, но полезный пакет, который автоматизирует синхронизацию версий между
Зачем это нужно:
- Часто версии инструментов (black, ruff, mypy и др.) расходятся: одно указано в lock-файле, другое — в pre-commit.
- В итоге могут воспроизводиться разные окружения и непредсказуемые ошибки.
Что делает sync-with-uv:
- Автоматически подтягивает версии из
- Интегрируется как pre-commit hook.
- Поддерживает частичную синхронизацию — не затрагивает инструменты, для которых версии не заданы.
Итог: один источник правды для зависимостей, меньше ручной рутины и более стабильные пайплайны.
🔗 Репозиторий: https://github.com/tsvikas/sync-with-uv
Небольшой, но полезный пакет, который автоматизирует синхронизацию версий между
uv.lock
и .pre-commit-config.yaml
. Зачем это нужно:
- Часто версии инструментов (black, ruff, mypy и др.) расходятся: одно указано в lock-файле, другое — в pre-commit.
- В итоге могут воспроизводиться разные окружения и непредсказуемые ошибки.
Что делает sync-with-uv:
- Автоматически подтягивает версии из
uv.lock
в .pre-commit-config.yaml
. - Интегрируется как pre-commit hook.
- Поддерживает частичную синхронизацию — не затрагивает инструменты, для которых версии не заданы.
Итог: один источник правды для зависимостей, меньше ручной рутины и более стабильные пайплайны.
🔗 Репозиторий: https://github.com/tsvikas/sync-with-uv
👍5❤2
🔥Свежий курс со Stepik: Linux: полный апгрейд твоих скиллов
Хочешь реально понимать, что происходит под капотом твоей системы, а не просто кликать по GUI?
Без глубокого знания базы ты не инженер - ты просто пользователь.
🔹 В курсе ты:
- Освоишь bash, grep, sed, awk - инструменты, которыми живут админы.
- Разберёшь права, процессы, сеть, файловую систему и научишься чинить всё, что падает.
- Настроишь SSH, firewall, systemd, crontab, демоны и автозапуск.
- Научишься анализировать логи, следить за нагрузкой, и не паниковать при 100% CPU.
💡 Формат: пошаговое объяснение базы и разбор важных практик по работе с Linux.
🎯 После курса ты: будешь чувствовать Linux как родную среду и забудешь, что такое “permission denied”.
🚀 Сейчас действуют скидка целых - 30%, не упусти реальный шанс прокачаться.
👉 Забирай место на курсе со скидкой
Хочешь реально понимать, что происходит под капотом твоей системы, а не просто кликать по GUI?
Без глубокого знания базы ты не инженер - ты просто пользователь.
🔹 В курсе ты:
- Освоишь bash, grep, sed, awk - инструменты, которыми живут админы.
- Разберёшь права, процессы, сеть, файловую систему и научишься чинить всё, что падает.
- Настроишь SSH, firewall, systemd, crontab, демоны и автозапуск.
- Научишься анализировать логи, следить за нагрузкой, и не паниковать при 100% CPU.
💡 Формат: пошаговое объяснение базы и разбор важных практик по работе с Linux.
🎯 После курса ты: будешь чувствовать Linux как родную среду и забудешь, что такое “permission denied”.
🚀 Сейчас действуют скидка целых - 30%, не упусти реальный шанс прокачаться.
👉 Забирай место на курсе со скидкой
🔥2❤1👍1👎1
🐍 Хитрая задача с собеседования по Python
> Что выведет этот код и почему?
❓Вопрос: Почему list1 и list3 одинаковы?
🔍 Разбор:
Аргументы по умолчанию в Python вычисляются один раз — в момент определения функции, а не при каждом вызове.
Поэтому lst=[] создаётся один раз и сохраняется между вызовами, если вы не передали свой список явно.
🧠 Что произойдет:
- extend_list(10) → использует общий список [], теперь он [10]
- extend_list(123, []) → создаёт новый список [123]
- extend_list('a') → снова использует общий список → [10, 'a']
👉 Результат:
✅ Как исправить:
Если вы хотите, чтобы по умолчанию создавался новый список при каждом вызове, делайте так:
Это классическая ловушка Python-интервью - mutable default arguments.
Проверяет, понимаешь ли ты, как работают значения по умолчанию и область памяти.
> Что выведет этот код и почему?
def extend_list(val, lst=[]):
lst.append(val)
return lst
list1 = extend_list(10)
list2 = extend_list(123, [])
list3 = extend_list('a')
print(list1, list2, list3)
❓Вопрос: Почему list1 и list3 одинаковы?
🔍 Разбор:
Аргументы по умолчанию в Python вычисляются один раз — в момент определения функции, а не при каждом вызове.
Поэтому lst=[] создаётся один раз и сохраняется между вызовами, если вы не передали свой список явно.
🧠 Что произойдет:
- extend_list(10) → использует общий список [], теперь он [10]
- extend_list(123, []) → создаёт новый список [123]
- extend_list('a') → снова использует общий список → [10, 'a']
👉 Результат:
[10, 'a'] [123] [10, 'a']
✅ Как исправить:
Если вы хотите, чтобы по умолчанию создавался новый список при каждом вызове, делайте так:
def extend_list(val, lst=None):
if lst is None:
lst = []
lst.append(val)
return lst
Это классическая ловушка Python-интервью - mutable default arguments.
Проверяет, понимаешь ли ты, как работают значения по умолчанию и область памяти.
🔥6