Чтобы найти работу, пройденного курса и классного резюме недостаточно. На практике, чтобы выделиться на собеседовании, нужно понимать как оперативно использовать тот или иной инструмент в разных кейсах. Эти навыки приходят с опытом решения тестовых заданий, одно из которых мы разберем на вебинаре.
Денис Иванов - ведущий продуктовый аналитик разберет тестовое задание в Самокат на позицию Junior аналитика данных в рамках бесплатного вебинара.
Что мы будем делать на вебинаре:
🕗 Встречаемся 18 марта 18:30 по МСК
Please open Telegram to view this post
VIEW IN TELEGRAM
Чтобы открыть файл c:\scores.txt для записи, мы пишем...
Anonymous Quiz
33%
outfile = open("c:\scores.txt", "w")
40%
outfile = open("c:\\scores.txt", "w")
13%
outfile = open(file = "c:\scores.txt", "w")
9%
outfile = open(file = "c:\\scores.txt", "w")
5%
Узнать ответ
Чем первое выражение отличается от второго?
Anonymous Quiz
70%
Дополнительная ведущая точка выполняет импортирование, начиная с родительского каталога
14%
.. позволяет импортировать откуда угодно в проекте
9%
.. позволяет импортировать атрибуты классов
7%
Ничем не отличается
Какая строка является примером абсолютного импортирования?
Anonymous Quiz
48%
1
27%
2
8%
3
16%
Никакая
Каким будет вывод этого кода?
Anonymous Quiz
34%
{4, 5}
7%
{6}
45%
Ошибка: множество - неподдерживаемый операнд
5%
Ошибка: в обоих множествах присутствует число 6
9%
Посмотреть ответ
Каким будет вывод этого кода?
Anonymous Quiz
16%
1
22%
1 3 5 7 …
2%
1 2 3 4 …
53%
Ничто из перечисленного
6%
Посмотреть ответ
Каким может быть вывод этого кода?
random.randrange(0,91,5)
random.randrange(0,91,5)
Anonymous Quiz
61%
10
5%
18
8%
79
12%
95
15%
Посмотреть ответ
Что можно увидеть в sys.path в Python 3.X?
Anonymous Quiz
30%
Только значение переменной PYTHONPATH
18%
Только пути до модулей в рамках репозитория
36%
Только абсолютный путь до текущей директории
16%
sys.path в Python 3 уже нет
Forwarded from Python/ django
🐍 Задача по Python: Замыкания и области видимости
Что выведет следующий код?
Варианты ответа:
A)
B)
C)
D) Ошибка выполнения
---
✅ Правильный ответ:A
Почему:
Функция создаёт замыкание. Переменная сохраняется между вызовами , потому что — замыкает и изменяет её с помощью . Это классический пример использования замыканий в Python.
@pythonl
Что выведет следующий код?
def outer():
x = 5
def inner():
nonlocal x
x += 1
return x
return inner
f = outer()
print(f())
print(f())
print(f())
Варианты ответа:
A)
7
8
B)
5
5
C)
6
6
D) Ошибка выполнения
---
✅ Правильный ответ:
Почему:
Функция
outer
x
f
inner
x
nonlocal
@pythonl
🧠 Python-хитрая задача + решение
🖍️ Условие:
У тебя есть список логов (user, login/logout).
Найди тех, кто зашел, но не вышел.
📜 Пример:
________
💻 Решение:
🛠Ответ:"carol"
#Python #Challenge #DevPuzzle
@python_job_interview
🖍️ Условие:
У тебя есть список логов (user, login/logout).
Найди тех, кто зашел, но не вышел.
📜 Пример:
logs = [
("alice", "login"),
("bob", "login"),
("alice", "logout"),
("dave", "login"),
("bob", "logout"),
("carol", "login"),
("dave", "logout")
]
________
💻 Решение:
from collections import defaultdict
def find_stuck_users(logs):
counter = defaultdict(int)
for user, action in logs:
if action == "login":
counter[user] += 1
elif action == "logout":
counter[user] -= 1
return sorted([user for user, count in counter.items() if count > 0])
🛠Ответ:
#Python #Challenge #DevPuzzle
@python_job_interview
Что выведет этот код при запуске на Python 3.10+ (например, 3.11)?
📌 Подсказка:Подумайте о порядке проверок, о том, какие атрибуты попадают в others, и об использовании __match_args__.
Ответ:
Automatic mode
Mode manual, other keys: ['threshold', 'debug']
Low threshold 0
Краткое пояснение:
Для первого объекта (mode="auto", threshold=10) срабатывает первый case Config(mode="auto") → Automatic mode.
Для второго (mode="manual", threshold=5, debug=True) первый не совпадает, второй с threshold<5 не проходит (5 < 5 → False), зато третий case Config(mode=mode, **others) — биндинг mode='manual', остальные ключи (threshold и debug) попадают в others → Mode manual, other keys: ['threshold', 'debug'].
Для третьего (threshold=0) первый и третий не подходят (нет mode), а второй — case Config(threshold=threshold) if threshold<5 — срабатывает (0<5) → Low threshold 0.
📌 Подсказка:
Ответ:
Automatic mode
Mode manual, other keys: ['threshold', 'debug']
Low threshold 0
Краткое пояснение:
Для первого объекта (mode="auto", threshold=10) срабатывает первый case Config(mode="auto") → Automatic mode.
Для второго (mode="manual", threshold=5, debug=True) первый не совпадает, второй с threshold<5 не проходит (5 < 5 → False), зато третий case Config(mode=mode, **others) — биндинг mode='manual', остальные ключи (threshold и debug) попадают в others → Mode manual, other keys: ['threshold', 'debug'].
Для третьего (threshold=0) первый и третий не подходят (нет mode), а второй — case Config(threshold=threshold) if threshold<5 — срабатывает (0<5) → Low threshold 0.