en
Feedback
Python: задачки и вопросы

Python: задачки и вопросы

Open in Telegram

Вопросы и задачки для подготовки к собеседованиям и прокачки навыков Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media

Show more
7 127
Subscribers
+124 hours
No data7 days
-930 days
Attracting Subscribers
June '26
June '26
+13
in 0 channels
May '26
+58
in 1 channels
Get PRO
April '26
+33
in 0 channels
Get PRO
March '26
+29
in 1 channels
Get PRO
February '26
+32
in 1 channels
Get PRO
January '26
+39
in 0 channels
Get PRO
December '25
+44
in 0 channels
Get PRO
November '25
+102
in 3 channels
Get PRO
October '25
+61
in 0 channels
Get PRO
September '25
+56
in 1 channels
Get PRO
August '25
+65
in 3 channels
Get PRO
July '25
+58
in 0 channels
Get PRO
June '25
+56
in 0 channels
Get PRO
May '25
+52
in 0 channels
Get PRO
April '25
+89
in 0 channels
Get PRO
March '25
+77
in 1 channels
Get PRO
February '25
+108
in 3 channels
Get PRO
January '25
+115
in 2 channels
Get PRO
December '24
+94
in 1 channels
Get PRO
November '24
+81
in 1 channels
Get PRO
October '24
+78
in 0 channels
Get PRO
September '24
+82
in 0 channels
Get PRO
August '24
+75
in 0 channels
Get PRO
July '24
+73
in 0 channels
Get PRO
June '24
+82
in 0 channels
Get PRO
May '24
+163
in 2 channels
Get PRO
April '24
+158
in 0 channels
Get PRO
March '24
+117
in 0 channels
Get PRO
February '24
+117
in 0 channels
Get PRO
January '24
+143
in 1 channels
Get PRO
December '23
+140
in 0 channels
Get PRO
November '23
+120
in 0 channels
Get PRO
October '23
+94
in 0 channels
Get PRO
September '23
+95
in 0 channels
Get PRO
August '23
+145
in 0 channels
Get PRO
July '23
+312
in 0 channels
Get PRO
June '23
+90
in 0 channels
Get PRO
May '23
+140
in 0 channels
Get PRO
April '23
+258
in 0 channels
Get PRO
March '23
+217
in 0 channels
Get PRO
February '23
+307
in 0 channels
Get PRO
January '23
+222
in 0 channels
Get PRO
December '22
+327
in 0 channels
Get PRO
November '22
+256
in 0 channels
Get PRO
October '22
+286
in 0 channels
Get PRO
September '22
+294
in 0 channels
Get PRO
August '22
+652
in 0 channels
Get PRO
July '22
+410
in 0 channels
Get PRO
June '22
+246
in 0 channels
Get PRO
May '22
+360
in 0 channels
Get PRO
April '22
+266
in 0 channels
Get PRO
March '22
+204
in 0 channels
Get PRO
February '22
+340
in 0 channels
Get PRO
January '22
+2 183
in 0 channels
Get PRO
December '21
+2 522
in 0 channels
Get PRO
November '21
+1 808
in 0 channels
Get PRO
October '21
+1 036
in 0 channels
Date
Subscriber Growth
Mentions
Channels
03 June+5
02 June+3
01 June+5
Channel Posts
2
Обучение английскому для тех, у кого дедлайн был вчера Оффер в зарубежную компанию или релокация на носу? Александр Моргунов
Обучение английскому для тех, у кого дедлайн был вчера Оффер в зарубежную компанию или релокация на носу? Александр Моргунов даст крепкую базу и много живой разговорной практики! Кому подойдёт обучение Школьникам (9–11 класс) — подготовка к лингвистическим олимпиадам, поступление в вуз (в том числе зарубежный при релокации с родителями). Студентам — международные языковые экзамены, программы по обмену и учёба за границей, защита диплома на английском. Специалистам — собеседования, переговоры и презентации без переводчика, мягкая релокация, работа на международном уровне из любой точки мира, международные экзамены и курсы повышения квалификации. Заниматься можно по будням, 2 занятия в неделю по 80 минут. Это регулярный ритм, спокойное погружение в новый материал, понятный объём домашки и много живой практики. Идеально, если хочется учиться системно и с поддержкой преподавателя. Другой формат — выходные, с 10:00 до 19:00, 1–2 раза в месяц. Скорее кураторство, чем пошаговое обучение: разбираете теорию (на начальных уровнях), закрываете пробелы, а основную практику вы добираете самостоятельно или прямо на работе. Подходит тем, у кого английский уже звучит в жизни каждый день. Занятия индивидуальные или в мини-группах до 4-х человек, проводятся онлайн или с выездом в ваш офис в Москве. Начните с бесплатной вводной сессии и подберите удобный формат! Запись на вводную сессию, больше подробностей о форматах и ценах вы найдёте на сайте: alexandermorgunov.ru Это #партнёрский пост
238
3
No text...
387
4
No text...
537
5
No text...
684
6
No text...
676
7
No text...
662
8
Развёрнутое пояснение: Выражение a + [3] порождает новый список, который затем присваивается переменной a, не затрагивая исходный объект, на который ссылается b. Если бы использовалось a += [3], вызвался бы метод __iadd__, изменяющий список на месте, и тогда b тоже бы изменился. Таким образом, оператор присваивания с + не модифицирует исходный список.
629
9
No text...
586
10
Подробное объяснение 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() работает через магию компилятора — даже во вложенных функциях.
704
11
No text...
610
12
Подробное объяснение 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. Понимание двунаправленной коммуникации с генератором критично для асинхронного кода.
582
13
No text...
567
14
Подробное объяснение 1️⃣ case Animal() проверяет isinstance(d, Animal). 2️⃣ Dog — подкласс Animal, поэтому проверка возвращает True. 3️⃣ Выполняется print("A"), блок case Dog() пропускается. 4️⃣ Match не падает сквозь — только первый подходящий case. 5️⃣ print("done") выполняется в любом случае. Почему это важно Более общий паттерн сверху перехватывает частные. Чтобы Dog сработал — поменяйте порядок: Dog выше Animal.
565
15
No text...
484
16
Подробное объяснение 1️⃣ @dataclass создаёт __init__(self, tags=[]) — пустой список вычисляется один раз при определении класса. 2️⃣ u1 = User() и u2 = User() получают ссылку на один и тот же список. 3️⃣ u1.tags.append("admin") мутирует этот список. 4️⃣ u2.tags видит ту же мутацию — выводит ['admin']. 5️⃣ Правильно: tags: list = field(default_factory=list). Почему это важно Тот же баг, что и в обычной функции, но скрыт за декоратором. default_factory создаёт новый объект для каждого экземпляра.
586
17
No text...
552
18
Подробное объяснение 1️⃣ hash(1) == hash(1.0) == hash(True) == 1. 2️⃣ 1 == 1.0 == True → все дубликаты в set → len → 1. 3️⃣ a is b → 1 is 1.0 → разные типы, разные объекты → False. 4️⃣ a is c → 1 is True → False. 5️⃣ Вывод: 1 False False. Почему это важно is для чисел — антипаттерн. Работает случайно для малых чисел, ломается в production. Всегда используйте ==.
661
19
No text...
3 598
20
Подробное объяснение 1️⃣ a = Singleton(): _inst равен None → создаётся объект → _inst заполнен. 2️⃣ b = Sub(): Sub не переопределяет __new__, использует родительский. 3️⃣ Внутри __new__ проверяется cls._inst. Python ищет _inst в MRO: Sub.__dict__ → Singleton.__dict__. 4️⃣ Находит _inst в Singleton (уже не None) → возвращает тот же объект. 5️⃣ a is b → True. Тип объекта — Singleton (создан через super().__new__(cls) в первый раз). 6️⃣ Вывод: True Singleton Singleton. Почему это важно? Наследование ломает изоляцию Singleton. Каждый подкласс должен иметь свой _inst, иначе все клонируют объект родителя.
590