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

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

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

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

Другие наши проекты: https://tprg.ru/media
Download Telegram
Каким будет результат выполнения кода выше?
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
Объяснение:

Кортежи в Python являются неизменяемыми и любая попытка изменить их после создания приведёт к выбросу исключения TypeError
Каким будет результат выполнения кода выше?
Anonymous Quiz
29%
5 10 15
48%
5 15 30
3%
0 5 10
19%
Error
Объяснение:

func() возвращает функцию another_func(), которая имеет доступ к переменной total из внешней функции

В данном случае каждый вызов counter увеличивает total на переданное значение, а последовательные вызовы counter(5), counter(10) и counter(15) приводят к значениям 5, 15 и 30 соответственно
Каким будет результат выполнения кода выше?
Anonymous Quiz
76%
1
7%
2
9%
0
9%
Error