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

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

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

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

Другие наши проекты: https://tprg.ru/media
Download Telegram
Каким будет результат выполнения кода?
Anonymous Quiz
63%
216
19%
864
13%
1062882
5%
Error
Объяснение:

Оператор возведения в степень (**) имеет более высокий приоритет, чем оператор умножения (*)

Поэтому оператор 2 * 3 ** 3 * 4 = 2 * 27 * 4 = 216
Какой из перечисленных операторов имеет наивысший приоритет?
Anonymous Quiz
49%
not
15%
&
35%
*
2%
+
Объяснение:

Всё так, * имеет наивысший приоритет среди всех перечисленных в задании операторов

Выше его лишь **, ~x, +x, -x
Каким будет результат выполнения кода?
Anonymous Quiz
64%
64
32%
512
4%
Error
Объяснение:

Т.к. мы не использовали скобки, то оператор возведения в степень сработал по стандартному сценарию

Загвоздка в том, что он выполняется справа налево

Таким образом, 2 ** 3 ** 2 = 2 ** 9 = 512
Каким будет результат выполнения кода?
Anonymous Quiz
48%
12
4%
10
48%
Error
Объяснение:

В Python недопустима такая конструкция, поэтому мы ловим SyntaxError
Каким будет результат выполнения кода?
Anonymous Quiz
1%
66 0
2%
36 0
28%
36 3
69%
36 3.0
Объяснение:

Не забываем — используя /, мы получаем в ответе float-число

Поэтому 6 / 2 != 3, а 6 / 2 = 3.0
Каким будет результат выполнения кода?
Anonymous Quiz
10%
20
74%
30
4%
None
12%
The program executed with errors
Объяснение:

В Python мы можем задавать значения для аргументов по умолчанию. Они используются, если функция вызывается без пользовательских аргументов
Каким будет результат выполнения кода?
Anonymous Quiz
11%
0
36%
1
50%
2
3%
3
Объяснение:

Манипуляции с присваиванием tmp отсортированного списка lst и дальнейшим использованием метода insert() — это интересно, но по итогу на печать мы всё равно выводим первый элемент самого lst. А это, в свою очередь, число 2