Python: задачки и вопросы
7.69K 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
Каким будет результат выполнения кода выше?
Anonymous Quiz
45%
<object object at ...>
9%
True
34%
None
13%
Error
Объяснение:

При вызове f() с аргументом object(), аргумент не является идентичным DEFAULT

Поэтому возвращается сам аргумент arg, которым является объект object()
Каким будет результат выполнения кода выше?
Anonymous Quiz
4%
0
35%
1
2%
2
59%
Error
Объяснение:

set_ — это множество, а оно не индексируется. Отсюда и невозможность получить значение по индексу
Каким будет результат выполнения кода выше?
Anonymous Quiz
6%
b'abc'
25%
b'0bc'
4%
None
64%
Error
Объяснение:

Ошибка происходит из-за того, что объекты типа bytes в Python являются неизменяемыми (immutable)

Это означает, что вы не можете изменить отдельные элементы внутри объекта bytes после его создания
Каким будет результат выполнения кода выше?
Anonymous Quiz
53%
True
33%
False
7%
None
7%
Error
Объяснение:

Ответ True связан с наследованием иерархии классов в языке Python. Всё дело в том, что bool — это подкласс класса int

Это означает, что bool наследует некоторые методы и атрибуты от int

Функция issubclass() же, в свою очередь, возвращает True, если первый аргумент является подклассом второго аргумента и False в противном случае
Каким будет результат выполнения кода выше?
Anonymous Quiz
35%
True
57%
False
3%
None
5%
Error
Объяснение:

type({}) возвращает тип данных dict, а type({1}) — set
Каким будет результат выполнения кода выше?
Anonymous Quiz
12%
1 2 3 4 5
11%
1 2 3 {'x': 4, 'y': 5}
59%
1 (2, 3) {'x': 4, 'y': 5}
18%
Error
Объяснение:

В func() аргумент a принимает первое значение переданное в функцию, *b собирает все позиционные аргументы, идущие после a, в кортеж, а **c собирает все именованные аргументы в словарь
Каким будет результат выполнения кода выше?
Anonymous Quiz
51%
True
46%
False
2%
None
1%
Error
Объяснение:

Оператор is в Python проверяет, указывают ли две переменные на один и тот же объект в памяти

В данном случае, [1, 2, 3] создаёт новый список в памяти. И при каждом вызове [1, 2, 3] будет создаваться новый объект списка

Таким образом, две ссылки на [1, 2, 3] в коде указывают на разные объекты в памяти, даже если содержание этих объектов идентично

Отсюда и ответ — False