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

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

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

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

Другие наши проекты: https://tprg.ru/media
Download Telegram
Каким будет результат выполнения кода выше?
Anonymous Quiz
12%
2 3 4 5 6 1
10%
6 1 2 3 4 5
60%
2 3 4 5 6 6
19%
1 1 2 3 4 5
Объяснение:

На каждой итерации первого цикла, значение элемента с индексом i-1 (предыдущего элемента) заменяется на значение элемента с индексом i (текущего элемента). Это приводит к сдвигу всех элементов списка на одну позицию влево, кроме первого элемента, который заменяется на второй.

Последний элемент списка дублируется, потому что в последней итерации цикла for i in range(1, 6) нет "следующего" элемента, значение которого можно было бы присвоить предыдущему. На выходе получается "2 3 4 5 6 6".
Каким будет результат выполнения кода выше?
Anonymous Quiz
32%
1
45%
2
7%
None
16%
Error
Объяснение:

Когда func вызывается без аргументов, он использует значение по умолчанию для i, которое определяется на момент написания функции. Поскольку x было равно 1 на момент определения функции, i устанавливается в 1, и это значение выводится на экран.
Каким будет результат выполнения кода выше?
Anonymous Quiz
38%
10.00
53%
10.12
4%
10.10
5%
10.20
Объяснение:

С помощью функции round() мы округляем число до ближайшего целого значения, в данном случае 10. Затем применяется форматирование :.2f, указывающее, что число должно быть представлено как число с плавающей точкой с двумя знаками после запятой. Таким образом, и получаем 10.00
Каким будет результат выполнения кода выше?
Anonymous Quiz
11%
[1, 2, 'hello',' ', []]
17%
Error
58%
[1, 2, 'hello']
14%
[1, 0, 2, 0, 'hello',' ', []]
Объяснение:

Приведенный выше код возвращает новый список, содержащий только те элементы списка l, которые не равны нулю. Следовательно, выводится: [1, 2, 'hello']
Объяснение:

Функция id() возвращает уникальный идентификатор указанного объекта. Все объекты в Python имеют свой уникальный идентификатор. Идентификатор — это адрес памяти объекта, который будет меняться при каждом запуске программы. За исключением некоторых объектов, имеющих постоянный уникальный идентификатор, например целых чисел от -5 до 256. Поэтому только 2 ответ был правильным.
Каким будет результат выполнения кода выше?
Anonymous Quiz
3%
a=6 b=9
70%
a=16 b=19
21%
a=6 b=16
6%
a=9 b=19
Объяснение:

Если вы прочитаете PEP 572, который определяет выражения присваивания, вы увидите раздел " Исключительные случаи", в котором есть пример, похожий на тот, что приведен в этой викторине. Они называют этот синтаксис "допустимым, но не рекомендуемым". И это хорошо характеризует данный код.

Зато это может помочь нам понять, как работают выражения присваивания. Для этого мы выполнили данный код по частям (см картинку). При первом выводе REPL сообщает нам, что мы создали кортеж (6, 9), который был немедленно отброшен), и во время создания кортежа переменной a было присвоено значение 6.

При запуске второго выражения мы снова видим, что был создан кортеж, на этот раз со значениями из a, 16 и 19. Значение 16 было присвоено b оператором walrus, значение 19 было отброшено.

Так и получилось, что 3 ответ был правильным :)
Какой символ используется для перехода на новую строку?
Anonymous Quiz
47%
/n
1%
/t
2%
\r
51%
\n
Объяснение:

В Python в строках можно применять управляющие символы. Они ДОЛЖНЫ начинаться с «бэкслеша» \.

Вот несколько примеров:
\n — переход на новую строку;
\t — табуляция;
\r — возврат каретки в начало строки;
\b — возврат каретки на один символ.
Какое исключение будет выброшено, если попытаться изменить кортеж после его создания?
Anonymous Quiz
18%
ValueError
56%
TypeError
20%
AttributeError
7%
IndexError