Python: задачки и вопросы
7.7K 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
Объяснение:

В Python есть Си-образное форматирование строк

Здесь мы имеем дело именно с ним, а потому вместо %s подставляем значения переменных var1 и var2, находящимся в кортеже после знака %
Каким будет результат выполнения кода выше?
Anonymous Quiz
35%
21
7%
0
49%
21.0
9%
0.0
Объяснение:

При сложении int и float мы получаем float. Поэтому int(21) + float(21) = 42.0, но! У нас есть ещё float(21) x 0, который выполняется раньше.

В итоге мы имеем: int(21) + float(21) x 0 <==> int(21) + 0.0 <==> 21.0
Каким будет результат выполнения кода выше?
Anonymous Quiz
32%
[1]
34%
[1, 1]
23%
[1, 1, 1]
11%
Error
Объяснение:

При каждом вызове hmm() в список itm добавляется один новый элемент. В for _ in range(2) функция вызывается дважды, а во время print(hmm()) ещё один раз

Именно поэтому itm == [1, 1, 1]
Каким будет результат выполнения кода выше?
Anonymous Quiz
6%
{0: 0, 1: 0, 2: 0}
47%
{0: 1, 1: 1, 2: 1}
29%
{0: 0, 1: 0, 2: 0, 0: 1, 1: 1, 2: 1}
18%
Error
Объяснение:

В первом цикле мы будем перебирать три значения: i = 0, i = 1, i = 2

В следующем мы добавляем и перезаписываем значения: dictionary[0] = [0], после чего dictionary[0] становится равен [1], из-за перезаписи.
Каким будет результат выполнения кода выше?
Anonymous Quiz
10%
(1, 2, 3, 4)
7%
(0, 1, 2, 3, 4)
27%
(0, 2, 3, 4)
56%
Error
Объяснение:

Кортеж (tuple) — неизменяемый тип данных. Поэтому при попытке изменить его выдаётся ошибка:

TypeError: 'tuple' object does not support item assignment
Объяснение:

В Python именно метод __str__ используется для создания строкового представления значения объекта, наиболее читаемого для человека
Каким будет результат выполнения кода выше?
Anonymous Quiz
13%
0
19%
new
23%
old
44%
Error
Объяснение:

Сочетание print() и конструкции [element1, element2, element3, ...][num] позволяет напечатать определённый элемент списка, где num — это индекс элемента

Учитывая, что в задачке bool(obj) равен 1, то на печать уходит второй элемент списка ['new, 'old']