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

В данном случае возникает ошибка TypeError: 'tuple' object does not support item assignment, потому что кортежи являются неизменяемыми объектами и их элементы не могут быть изменены после создания

В то же время элементы внутри кортежа, являющиеся изменяемыми объектами (например, списки), могут быть изменены
Каким будет результат выполнения кода выше?
Anonymous Quiz
42%
True
43%
False
2%
None
12%
Error
Объяснение:

В Python строки сравниваются посимвольно:

'а' > 'а'False
'б' > 'б'False
'в' > 'б'True

Так и возвращаем True, игнорируя последний символ — 'в'
Каким будет результат выполнения кода выше?
Anonymous Quiz
58%
True
23%
False
4%
None
15%
Error
Объяснение:

Когда мы пишем var is None is True, Python интерпретирует этот кусок кода как (var is None) and (None is True)

var is None проверяет, является ли переменная var равной None, и возвращает True

None is True проверяет, является ли объект None равным объекту True, что является ложным, поэтому имеем False

True and False, в свою очередь, возвращает False
Объяснение:

В Python, метод new отвечает за создание объекта, а метод init используется для инициализации объекта после его создания

Эти два метода взаимодействуют в процессе создания объекта класса
Объяснение:

Декоратор @staticmethod в Python преобразует метод класса в статический метод, который может быть вызван без создания экземпляра класса

Статические методы не имеют доступа к атрибутам экземпляра или класса. Они могут использоваться для выполнения задач, которые не требуют доступа к состоянию объекта, но связаны с классом в целом
Каким будет результат выполнения кода выше?
Anonymous Quiz
10%
0
6%
2
78%
8
7%
9
Объяснение:

Здесь мы создаём список из чётных чисел от 0 до 8 при помощи генератора списка и условия if i % 2 == 0

Затем извлекается последний элемент из данного списка и его значение присваивается переменной res. Т.к. последний элемент списка — число 8, то и результатом выполнения этого кода будет число 8
Каким будет результат выполнения кода выше?
Anonymous Quiz
11%
[1, 4, 9]
84%
[2, 4, 6]
3%
[2, 4, 8]
1%
[2, 3, 6]
Объяснение:

func() принимает один аргумент x и возвращает его удвоенное значение

Затем эта функция применяется к каждому элементу списка [1, 2, 3] при помощи встроенной функции map. Она возвращает объект-генератор, который создаёт новый список, содержащий результаты применения функции func() к каждому элементу исходного списка

На выходе получится [2, 4, 6], т.к. func() вернёт удвоенное значение для каждого элемента данного списка
Каким будет результат выполнения кода выше?
Anonymous Quiz
11%
1 2 4 5 7 8
9%
3 4 6 7 9 10
4%
3 4 6 7 9 10
76%
1 4 6 5 7 10
Объяснение:

Здесь у нас простенький алгоритм:

— если текущее число делится на 3 без остатка, то цикл переходит к следующему шагу при помощи continue
— если текущее число не делится на 3 без остатка, то проверяется, делится ли оно на 2 без остатка. Если да — вычисляется значение выражения i + 2 и выводится на экран, если же нет, то выводится само число i