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
4%
[0, 1, 2, [3], 4, 5]
60%
[0, 1, 2, 3, 4, 5]
34%
[0, 1, 2, 3, [4, 5]]
2%
[0, 1, 2, [3], [4, 5]]
Объяснение:

Здесь мы создаем список lst, который изначально содержит элементы [0, 1, 2]

Затем метод .append(3) добавляет число 3 в конец списка, делая его [0, 1, 2, 3]

После этого метод .extend([4, 5]) расширяет список lst, добавляя элементы списка [4, 5] в его конец. Это приводит к окончательному списку [0, 1, 2, 3, 4, 5]
Каким будет результат выполнения кода выше?
Anonymous Quiz
25%
1234567
22%
**1234567
20%
1234567**
32%
*1234567*
Объяснение:

В данном форматировании строки с помощью метода .format(), {0:*^9} определяет формат вывода

0 указывает на индекс аргумента, который будет подставлен (1234567), * является символом, используемым для заполнения дополнительного пространства, ^ указывает на центрирование значения, а 9 определяет общую ширину поля

Поскольку число 1234567 состоит из 7 цифр и общая ширина поля установлена равной 9, с каждой стороны числа добавляется по одному символу * для достижения общей ширины в 9 символов, в результате чего получается *1234567*
Каким будет результат выполнения кода выше?
Anonymous Quiz
8%
0
22%
new
36%
old
33%
Error
Объяснение:

Злесь создается экземпляр класса Empty, который сохраняется в переменной obj

В Python, экземпляры пользовательских классов по умолчанию всегда считаются истинными (то есть bool(obj) возвращает True), если только в классе не определен специальный метод, который изменяет это поведение

В списке ['new', 'old'] значение по индексу 0 - это new, соответствующее False, а значение по индексу 1 - это old, соответствующее True

Так как bool(obj) возвращает True, выбирается элемент с индексом 1, то есть old
Каким будет результат выполнения кода выше?
Anonymous Quiz
13%
200023
4%
2023
5%
[2000, '23']
78%
Error
Объяснение:

В Python нельзя напрямую складывать переменные разных типов, в данном случае целое число (int) и строку (str)

Переменная var_int является целым числом (2000), а var_str — строкой ("23")

Попытка выполнить операцию var_int + var_str приведет к ошибке, так как Python не знает, как сложить эти два разных типа данных
Каким будет результат выполнения кода выше?
Anonymous Quiz
64%
True
31%
False
2%
None
4%
Error
Объяснение:

Функция set() в Python создает множество, которое содержит только уникальные элементы, причем порядок элементов в множестве не гарантирован и не важен

Когда мы преобразуем строки "new" и "wen" в множества, получаем множества с элементами {'n', 'e', 'w'} для обеих строк

Поскольку оба множества содержат одинаковые элементы, они считаются равными, и оператор сравнения == возвращает True
Каким будет результат выполнения кода выше?
Anonymous Quiz
12%
12313
7%
1233
9%
1122333
73%
112133
Объяснение:

Когда мы используем print(*lst, sep="1", end="3") с распакованным списком lst, который содержит элементы [1, 2, 3], каждый элемент списка печатается поочерёдно с разделителем 1 между ними

Это даёт 11213

После этого, параметр end="3" добавляет 3 в конец вывода, что делает окончательный результат 112133
Каким будет результат выполнения кода выше?
Anonymous Quiz
5%
0
4%
False
75%
None
16%
Error
Объяснение:

Здесь у нас определяется класс TempClass с атрибутом класса var, который инициализирован значением None. В Python None используется для представления отсутствия значения или нулевого состояния

Когда мы обращаемся к атрибуту класса TempClass.var, мы получаем значение этого атрибута, которое в данном случае является None

Это значение было установлено при определении класса и не изменялось, поэтому при печати print(TempClass.var) выводится None