Python: задачки и вопросы
7.69K subscribers
1.2K photos
2 videos
1 file
99 links
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков

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

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

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

Другие наши проекты: https://tprg.ru/media
Download Telegram
Каким будет результат выполнения кода выше?
Anonymous Quiz
1%
()
61%
Шла
20%
("Шла", "Саша", "по Шоссе")
18%
Error
Объяснение:

Ответ будет "Шла". В данном примере tup = "Шла", "Саша", "по Шоссе" создает кортеж (tuple) из трех элементов

Когда эти элементы распаковываются в переменные var1, var2, var3, каждой переменной присваивается соответствующий элемент кортежа

var1 получает первый элемент кортежа, который является строкой "Шла". Поэтому при выводе print(var1), отображается значение "Шла"
Каким будет результат выполнения кода выше?
Anonymous Quiz
13%
1
24%
2
50%
True
13%
False
Объяснение:

Логический оператор and возвращает первый операнд, если он ложен (в контексте булевой логики), или второй операнд, если первый истинен

В данном случае, поскольку var1 (который равен 1) является истинным значением (любое ненулевое число в Python считается истинным), результатом выражения var1 and var2 будет значение var2, которое равно 2
Каким будет результат выполнения кода выше?
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