Python вопросы с собеседований
24.9K subscribers
751 photos
101 videos
17 files
615 links
Вопросы с собеседований по Python

@workakkk - админ

@machinelearning_interview - вопросы с собесдований по Ml

@pro_python_code - Python

@data_analysis_ml - анализ данных на Python

@itchannels_telegram - 🔥 главное в ит

РКН: clck.ru/3FmrFd
Download Telegram
Media is too big
VIEW IN TELEGRAM
Что нового в Python 3.15? Ленивые импорты, frozendict и JIT быстрее на 12%

Python 3.15 вышел, и в нём много полезного для разработчиков. Ленивые импорты ускоряют запуск, появились frozendict и sentinel, UTF-8 теперь включён по умолчанию, а JIT ускоряет код на 7–12%. Ещё в релизе профилировщик Tachyon, который подключается к живому процессу, новые возможности typing и стабильный ABI для сборок без GIL. Перед обновлением проверьте зависимости и тесты.

Полный разбор: https://uproger.com/python-3-15-chto-novogo/

Видео: https://uproger.com/python-3-15-chto-novogo/

#python #python315 #программирование #разработка #jit
❤3👍3
Трюк Карпаты сработал: локальная LLM на Mac M5 выдает 117 токенов в секунду

Как open-source движок Uzu от Mirai обходит потолок пропускной способности памяти на Apple M5 и разгоняет Qwen3.5 9B с 22 до 117 токенов в секунду: квантизация, спекулятивный декодинг, Weaver и бенчмарк против llama.cpp и MLX.

https://uproger.com/uzu-uskorenie-lokalnyh-llm-apple-m5/
👍5❤3🔥1
🐍 Python умеет сравнивать числа как в математике

Проверку диапазона можно записать короче:


# Вместо
if 60 < heart_rate and heart_rate < 100:
print("В пределах диапазона")

# Пишем
if 60 < heart_rate < 100:
print("В пределах диапазона")


Это цепочка сравнений: оба условия должны выполняться. Границы включаются привычным способом:


0 <= score <= 100


💡 Есть полезная тонкость: в 60 < get_value() < 100 функция вызывается только один раз. А если повторить вызов по обе стороны and, она может выполниться дважды.
❤7🤯5🔥1
Python разбирает JSON на 66 ГБ/с: GIL больше не мешает

Свежий бенчмарк: 7,6 ГБ JSON обрабатываются в одном процессе Python примерно за 0,12 секунды. Это около 66 ГБ/с. Ещё пару лет назад такую цифру рядом со словом Python приняли бы за опечатку.

https://uproger.com/python-json-66-gbs-fastsimdjson/
👍10❤2
Media is too big
VIEW IN TELEGRAM
Python subprocess не умирает после отмены запроса: как остановить его правильно


Обрыв стрима не завершает подпроцесс: Python продолжает грузить CPU, хотя клиент давно ушёл. Запускайте процесс в отдельной группе (start_new_session=True) и отправляйте os.killpg(SIGTERM) всей группе, а если процесс завис, добивайте SIGKILL и вызывайте await proc.wait().

https://www.youtube.com/shorts/no9DlVbBGdY
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку

Окружение решает больше, чем кажется.

Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.

AI: t.iss.one/ai_machinelearning_big_data
Python: t.iss.one/pythonl
Linux: t.iss.one/linuxacademiya
Хакинг: t.iss.one/linuxkalii
DevOps: t.iss.one/DevOPSitsec
Docker: https://t.iss.one/+90Z5TAyfuNU5YmRi
Golang: t.iss.one/Golang_google
Rust: t.iss.one/rust_code
C++: t.iss.one/cpluspluc
C#: t.iss.one/csharp_1001_notes
Java: t.iss.one/javatg
JavaScript: t.iss.one/javascriptv
React: t.iss.one/react_tg
Frontend: t.iss.one/front
PHP: t.iss.one/phpshka
Android: t.iss.one/android_its
Мобильная разработка: t.iss.one/mobdevelop
Базы данных: t.iss.one/sqlhub
Data Science: t.iss.one/data_analysis_ml
Big Data: t.iss.one/bigdatai
Математика: t.iss.one/data_math
Физика: t.iss.one/fizmat
Kubernetes: t.iss.one/kubernetc
GameDev: https://t.iss.one/gamedev
Haskell: t.iss.one/haskell_tg

Собеседования и карьера:

DS собеседования: t.iss.one/machinelearning_interview
Python собеседования: t.iss.one/python_job_interview

Папка с вакансиями: t.iss.one/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.iss.one/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.iss.one/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.iss.one/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://t.iss.one/addlist/mzMMG3RPZhY2M2Iy

Полезное сверху:

ИТ-мемы: t.iss.one/memes_prog
Английский для программистов: t.iss.one/english_forprogrammers
ИИ и технологии: t.iss.one/vistehno
954 ГБ open-source курсов: https://t.iss.one/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: https://t.iss.one/addlist/BkskQciUW_FhNjEy

Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg

Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.
❤2👍1👎1🥰1
🐍 Пишешь на Python годами, а потом узнаёшь, что так было можно

На Reddit разработчики собрали возможности, которые долго проходили мимо них. Выбрали пять полезных.

1. Проверять несколько расширений одним вызовом


"photo.webp".endswith((".png", ".jpg", ".webp"))
# True


startswith() тоже принимает кортеж вариантов.

2. Получать группы регулярки через скобки


import re

m = re.search(r"(?P<year>\d{4})", "Python 2026")
if m:
print(m["year"]) # 2026


Да, вместо m.group("year") можно написать m["year"].

3. Считать частоты и сразу получать топ


from collections import Counter

Counter("banana").most_common(2)
# [('a', 3), ('n', 2)]


4. Убирать префикс без ручных срезов


"Bearer TOKEN".removeprefix("Bearer ")
# 'TOKEN'


Удаляется именно указанный префикс. Если его нет, строка остаётся прежней.

5. Объединять вложенные списки через итератор


from itertools import chain

list(chain.from_iterable([[1, 2], [3], [4, 5]]))
# [1, 2, 3, 4, 5]


Полезная замена sum(lists, []), который многократно копирует элементы и на больших данных может сильно тормозить.

Какую возможность Python ты обнаружил неприлично поздно?

https://www.reddit.com/r/Python/comments/1x3vy20/what_are_some_features_in_python_that_you/
🔥4❤2🥰1
25 лучших бесплатных ресурсов для изучения ИИ в 2026 году

Курсы Стэнфорда и MIT, книги, YouTube-каналы и открытые репозитории для изучения ИИ с нуля до LLM и агентов. Подборка по этапам и готовый маршрут обучения.

https://uproger.com/25-resursov-dlya-izucheniya-ii-2026/
❤3👍2
В Python 3.15 одна звёздочка заменяет вложенный цикл

Раньше для объединения списков писали:


rows = [[1, 2], [3], [4, 5]]

flat = [x for row in rows for x in row]


Теперь достаточно:


flat = [*row for row in rows]
# [1, 2, 3, 4, 5]


Двойная звёздочка объединяет словари:


configs = [
{"debug": False, "timeout": 10},
{"timeout": 30},
]

config = {**part for part in configs}
# {'debug': False, 'timeout': 30}


При совпадении ключей побеждает последнее значение — удобно собирать настройки из нескольких источников.

Распаковка убирает один уровень вложенности. В Python 3.14 такой синтаксис внутри comprehensions вызовет SyntaxError.

https://peps.python.org/pep-0798/
❤13👍5🔥2
LLM в 200 раз быстрее: скоринг вместо генерации

Как превратить открытую LLM в быстрый локальный движок решений через скоринг следующего токена в SGLang: код, тесты на Qwen и сравнение с генерацией.

Многие вызовы LLM в продакшене вообще не требуют нового текста. Приложение заранее знает все допустимые ответы, и модели остается только выбрать один из них. Классический пример: тикет в поддержку «С меня дважды списали деньги за одну и ту же подписку», который нужно отправить в биллинг, техподдержку или отдел доступа к аккаунтам.

https://uproger.com/lokalnaya-llm-jev-skoring-sglang/
❤4👍2🔥1
Как выучить Python с нуля в 2026 году: пошаговый план для начинающих

Пошаговый план изучения Python с нуля: установка, синтаксис, первые проекты, ошибки новичков и ответы на частые вопросы. С примерами кода.

Python — один из самых популярных языков программирования в мире.

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

https://uproger.com/kak-vyuchit-python-s-nulya/
👍3❤2🔥1
LRU-кэш на Python: разбор задачи с собеседования (O(1), OrderedDict, TTL)

Разбираем LRU-кэш на Python за O(1): двусвязный список и хеш-таблица, решение через OrderedDict, TTL и потокобезопасность. Код, тесты и типичные ошибки.

LRU-кэш (Least Recently Used) - одна из самых популярных задач на собеседованиях Python-разработчиков уровня middle и senior. Она короткая, но сразу показывает, понимает ли кандидат сложность алгоритмов, умеет ли комбинировать структуры данных и пишет ли чистый код. В этой статье разберём задачу по шагам: от наивного решения к оптимальному за O(1), затем к Pythonic-версии через OrderedDict и к усложнениям, которые любят давать интервьюеры.

https://uproger.com/lru-cache-python-sobesedovanie/
❤2👍2🔥1
Django 6.1: загрузка связанных данных по требованию, каскадное удаление силами БД и новая настройка почты.

Релиз вышел 5 августа. Три основных изменения:

1. Новые режимы загрузки полей

FETCH_PEERS при обращении к незагруженному полю получает данные сразу для объектов из того же QuerySet. Это помогает бороться с N+1:


from django.db import models

books = Book.objects.fetch_mode(models.FETCH_PEERS)

for book in books:
print(book.author.name)


В этом примере Django выполняет два запроса: за книгами и за их авторами.

Режим `FETCH_RAISE` вместо неявного запроса выбрасывает исключение – полезно для обнаружения неожиданных обращений к БД.

2. Удаление на уровне базы

Для ForeignKey.on_delete появились `DB_CASCADE`, `DB_SET_NULL` и `DB_SET_DEFAULT`. Логику выполняет сама БД через SQL ON DELETE.

Нюанс: `DB_CASCADE` не вызывает сигналы `pre_delete` и `post_delete`.

3. Несколько почтовых бэкендов

Настройка `MAILERS` позволяет описывать разные подключения словарём, а при отправке выбирать нужное через using.

Перед обновлением проверьте версии БД: нужны PostgreSQL 15+, MySQL 8.4+, MariaDB 10.11+ или SQLite 3.37+.

https://www.djangoproject.com/weblog/2026/aug/05/django-61-released/
❤4👏2👍1
Одна библиотека для сериализации и проверки данных в Python

🔥 msgspec объединяет работу с JSON, MessagePack и валидацию типов.

Что внутри:

- Быстрая сериализация.
- Проверка данных по типам.
- Поддержка JSON и MessagePack.
- Типизированные структуры Python.

Установка: pip install msgspec

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

https://github.com/msgspec/msgspec
❤4🔥2👍1
📄️️️️️️ Agent Harness Course 2026 - как построить своего AI-агента с нуля

Пошаговый курс на ~8 недель (1–2 часа в день): от одного запроса к LLM до агента с инструментами, памятью, субагентами, защитой и тестами
- и финального проекта.

Свой учебный харнес на чистом Python без единой зависимости, 7 запускаемых уроков, финальный проект, 19 тестов и разбор архитектуры настоящего open-source агента. Ai Ml — материал переработан, структурирован и дополнен кодом, схемами и справочниками.

Курс не учит «пользоваться ещё одним фреймворком». Он показывает, из чего сделан любой агент — Claude Code, Codex, Cursor, Devin, LearnHarness — и даёт собрать каждую деталь руками. После этого любой фреймворк читается за вечер, а любой баг агента - объясним.

https://github.com/justxor/agent-harness-course/
❤6👍3🥰1
Зачем вам Hugo и Jekyll? На Python теперь можно собрать статический сайт в три строки

Разработчик nanodjango показал, как превратить Django в генератор статических сайтов без сложной конфигурации и десятков файлов.

Всё приложение:


from nanodjango import Django

app = Django()
app.pages("/", path="pages")


Устанавливаем зависимости:


pip install nanodjango django-nanopages django-distill


Теперь достаточно положить Markdown-файлы в папку pages/. Они автоматически превращаются в страницы с поддержкой Django-шаблонов.

Что особенно интересно:

- Markdown и HTML с поддержкой frontmatter.
- Автоматическая перезагрузка страниц при редактировании.
- Генерация статического сайта одной командой.
- Поддержка Django ORM, моделей и админки.
- Возможность превратить проект в полноценное веб-приложение без переписывания с нуля.

Сборка HTML:


nanodjango manage website.py distill generate \
--output-directory=output/ --collectstatic


Самая необычная возможность: можно управлять контентом через Django Admin и базу данных, а на выходе получать обычные статические HTML-файлы без серверной логики.

Подойдёт для документации, блогов, лендингов и небольших сайтов.

https://nanodjango.dev/blog/2026-10-static-site-builder/
👍4❤3🔥3🤔1