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

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

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

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

Другие наши проекты: https://tprg.ru/media
Download Telegram
Объяснение:

Несмотря на то, что objectOne и objectTwo имеют одинаковые атрибуты, они всё равно ссылаются на два совершенно разных объекта

Отсюда и получаем, что их id будут отличаться
Какое максимальное значение int в Python 3?
Anonymous Quiz
17%
2^31–1
20%
2^62–1
20%
2^63–1
43%
Ничего из вышеперечисленного
Объяснение:

В Python нет предела max int. Количество битов не ограничивает значение целого числа, но зависит от размера доступной памяти
Каким будет результат выполнения кода выше?
Anonymous Quiz
63%
2 7
16%
1 5
17%
1 7
4%
2 5
Объяснение:

Любое изменение, сделанное в переменной varOne, не отражается, поскольку она является частным членом суперкласса
Каким будет результат выполнения кода выше?
Anonymous Quiz
3%
1 0
70%
1 2
17%
Программа работает нормально, но ничего не печатается
10%
Error
Объяснение:

В приведенном выше фрагменте кода метод вызова был реализован правильно, поэтому varOne = 1, a varTwo = 2
Каким будет результат выполнения кода выше?
Anonymous Quiz
13%
0
7%
1
48%
10
20%
20
12%
50
Объяснение:

Функция, описанная в задачке, рекурсивно вычисляет наибольший общий делитель двух чисел

Так, во время первого вызова функции numOne = 20, numTwo = 50, numTwo % numOne = 10. Во время второго вызова — numOne= 10, numTwo = 20, numTwo % numOne = 0. И последний вызов оставляет нас с numOne = 0, numTwo = 10, а потому возвращаемое значение numTwo10
Каким будет результат выполнения кода выше?
Anonymous Quiz
4%
[1, 3, 2, 3]
65%
[1, 3, 2, 4]
26%
[4, 3, 2, 1]
6%
[1, 3, 2, 1]
Объяснение:

Сначала мы вычисляем выражение в правой части:

arr[0], arr[arr[0]-1] = 1, 4, т.е. arr[0] = 1, arr[arr[0]-1] = 4

При этом arr[arr[0]-1] = arr[1-1] = arr[0] = 4

Отсюда и ответ — arr = [4, 3, 2, 1]
Каким будет результат выполнения кода выше?
Anonymous Quiz
5%
0
17%
1
28%
2
50%
3
Объяснение:

Первое выражение создаёт переменную f и присваивает ей значение (1, )

Во второй строчке мы сначала умножаем (2, ) на 2 и получаем (2, 2). А уже затем этом значение прибавляем к значению f, в результате чего получаем (1, 2, 2)

Ну а длина итогового выражения, в свою очередь, равна 3
Каким будет результат выполнения кода выше?
Anonymous Quiz
50%
varOne = 10, varTwo = 10
4%
varOne = 11, varTwo = 10
35%
varOne = 10, varTwo = 11
11%
varOne = 11, varTwo = 11