Python: задачки и вопросы
7.7K subscribers
1.2K photos
2 videos
1 file
98 links
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Другие наши проекты: https://tprg.ru/media
Download Telegram
Объяснение:

== имеет больший приоритет, чем not, а значит сначала сравнивается num с True (и получается False) и только потом результат меняется на противположный (False —> True)
Каким будет результат выполнения кода выше?
Anonymous Quiz
54%
Oh, no
6%
None
28%
12%
Error
Объяснение:

В Python else есть не только у if, но и у for с try

В случае с циклом, блок else выполняется в случае, если он завершился нормально и не был остановлен при помощи оператора break

Т.к. continute это не break, то мы спокойно получаем на печать Oh, no
Каким будет результат выполнения кода выше?
Anonymous Quiz
35%
True
53%
False
3%
None
9%
Error
Объяснение:

Метод sort() вернёт None, а значит в print() мы получим сравнение None == [0, 2, 4]. Отсюда и ответ False
Каким будет результат выполнения кода выше?
Anonymous Quiz
21%
0 0 0
59%
0 1 2
3%
None
17%
Error
Объяснение:

Хоть i = 0 и приравнивает переменную к нулю, уже на следующем проходе i берёт значение из range()

Поэтому мы и печатаем элементы, которые встречаются в range(3)
Каким будет результат выполнения кода выше?
Anonymous Quiz
43%
{0, 1, 2, 3}
5%
{1, 2, 3, 4}
38%
{range(0, 4)}
14%
Error
Объяснение:

Объект типа range — это отдельный объект. Поэтому он сохраняется в таком виде в качестве элемента множества (set)

Если же нужно получить {0, 1, 2, 3}, то надо распаковать range:

s = {*range(4)}
Каким будет результат выполнения кода выше?
Anonymous Quiz
12%
['a', 'A', 'b', 'B']
53%
['A', 'B', 'a', 'b']
32%
['a', 'b', 'A', 'B']
3%
Error
Объяснение:

Строки в Python сравниваются по позиции в ASCII

A65
B — 66
a97
b98
Каким будет результат выполнения кода выше?
Anonymous Quiz
21%
2
17%
1
50%
(2, 1)
11%
Error
Объяснение:

Функция divmod(a, b) работает так, что она возвращает кортеж. Первым его элементом будет результат a // b, а вторым — a % b