Python: задачки и вопросы
Открыть в Telegram
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media
Больше7 105
Подписчики
-224 часа
-177 дней
-2130 день
Архив постов
Развёрнутое пояснение:
Код удаляет ключ 'a', после чего порядок становится ['b']. Затем 'a' вставляется заново, а не восстанавливается на старом месте, поэтому итоговый порядок — ['b', 'a']. Это поведение гарантировано с Python 3.7.
Обучение английскому для тех, у кого дедлайн был вчера
Оффер в зарубежную компанию или релокация на носу? Александр Моргунов даст крепкую базу и много живой разговорной практики!
Кому подойдёт обучение
Школьникам (9–11 класс) — подготовка к лингвистическим олимпиадам, поступление в вуз (в том числе зарубежный при релокации с родителями).
Студентам — международные языковые экзамены, программы по обмену и учёба за границей, защита диплома на английском.
Специалистам — собеседования, переговоры и презентации без переводчика, мягкая релокация, работа на международном уровне из любой точки мира, международные экзамены и курсы повышения квалификации.
Заниматься можно по будням, 2 занятия в неделю по 80 минут. Это регулярный ритм, спокойное погружение в новый материал, понятный объём домашки и много живой практики. Идеально, если хочется учиться системно и с поддержкой преподавателя.
Другой формат — выходные, с 10:00 до 19:00, 1–2 раза в месяц. Скорее кураторство, чем пошаговое обучение: разбираете теорию (на начальных уровнях), закрываете пробелы, а основную практику вы добираете самостоятельно или прямо на работе. Подходит тем, у кого английский уже звучит в жизни каждый день.
Занятия индивидуальные или в мини-группах до 4-х человек, проводятся онлайн или с выездом в ваш офис в Москве.
Начните с бесплатной вводной сессии и подберите удобный формат! Запись на вводную сессию, больше подробностей о форматах и ценах вы найдёте на сайте: alexandermorgunov.ru
Это #партнёрский пост
Развёрнутое пояснение:
Выражение a + [3] порождает новый список, который затем присваивается переменной a, не затрагивая исходный объект, на который ссылается b. Если бы использовалось a += [3], вызвался бы метод __iadd__, изменяющий список на месте, и тогда b тоже бы изменился. Таким образом, оператор присваивания с + не модифицирует исходный список.
Подробное объяснение
1️⃣ Python 3 компилирует super() без аргументов в super(__class__, <first_arg>).
2️⃣ Компилятор создаёт __classcell__ — ячейку замыкания с классом B.
3️⃣ Внутри inner() Python ищет __class__ в замыканиях — находит B.
4️⃣ self берётся из параметра f(self) через цепочку замыканий.
5️⃣ super().f() → A.f(self) → возвращает "A".
Почему это важно
В Python 2 super(B, self) было обязательно. В Python 3 zero-argument super() работает через магию компилятора — даже во вложенных функциях.
Подробное объяснение
1️⃣ next(g) → yield 1 → возвращает 1.
2️⃣ next(g) → yield 2 → возвращает 2, останавливается на x = yield 2.
3️⃣ g.send(10) → отправляет 10 в левую часть yield → x = 10.
4️⃣ Генератор продолжается до yield x → возвращает 10.
5️⃣ Итог: 1 2 10.
Почему это важно
send() — основа корутин в asyncio. Понимание двунаправленной коммуникации с генератором критично для асинхронного кода.
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
