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

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

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

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

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

Т.к. finally в Python выполняется всегда, то и здесь мы получаем False

Вот если бы вместо return False у нас было бы pass, то функция вернула бы True
Каким будет результат выполнения кода выше?
Anonymous Quiz
10%
42
66%
42.0
2%
None
22%
Error
Объяснение:

sum(iterable, start) — функция sum() принимает на вход лишь итерируемые объекты, то есть объекты, которые способны возвращать элементы по одному

Так как ни int, ни float таковыми не являются, то у нас здесь ошибка
Каким будет результат выполнения кода выше?
Anonymous Quiz
7%
sus
36%
sos
4%
sous
54%
Error
Объяснение:

Строки — неизменяемый тип данных. А значит мы не можем изменить строку, обращаясь к её элементу по индексу
Каким будет результат выполнения кода выше?
Anonymous Quiz
14%
[]
19%
[[...]]
45%
[[]]
22%
Error
Объяснение:

При попытке добавить пустой список в пустой список через .append(), мы получим не [[]], a [[...]]

Таким образом Python защищает нас от рекурсии
Каким будет результат выполнения кода выше?
Anonymous Quiz
16%
Hi, my name is —
25%
Hi, my name is — None
13%
Hi, my name is — str
47%
Error
Объяснение:

Здесь всё достаточно просто — у нас переменная Name не определена. Поэтому мы ловим ошибку
Каким будет результат выполнения кода выше?
Anonymous Quiz
43%
[[1, 0, 1], [0, 0, 0]]
45%
[[0, 0, 0], [0, 0, 0]]
4%
[1, [0, 0, 0], 1]
8%
Error
Объяснение:

Функция copy() — поверхностная. То есть она копирует объект, вставляя с него ссылки на объекты, обнаруженные в оригинале

То есть он не создаёт новый экземпляр объекта. Поэтому изменения в lst отражаются и на lst_copy
Каким будет результат выполнения кода выше?
Anonymous Quiz
37%
True
42%
False
3%
None
18%
Error
Объяснение:

<< — это побитовое смещение влево. После знака << идёт число, на которое это сдвиг происходит

При этом сам сдвиг прослеживается лишь в двоичной системе счисления:

2 << 1 == 10 << 1 == 100 == 4 — пример из задачки
2 << 2 == 10 << 2 == 1000 == 8

В свою очередь, 2 ** 2 — это 2 во второй степени, т.е. 4

По итогу 4 == 4, ответ — True