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
Каким будет результат выполнения кода выше?
Anonymous Quiz
75%
True
8%
False
2%
None
15%
Error
Объяснение:

Здесь мы просто ловим Syntax error, так как Python не поддерживает используемый в примере синтаксис
Каким будет результат выполнения кода выше?
Anonymous Quiz
7%
b'hello'
21%
b'mello'
5%
None
67%
Error
Объяснение:

Объект типа bytes нельзя изменять. Для того, чтобы код заработал, var надо «завернуть» в bytearray()

Итоговый код должен выглядеть так:

var = bytearray(b'hello')
var[0] = 109

print(var)
Как взывать встроенную в Python справочную систему для объекта var?
Anonymous Quiz
56%
help(var)
17%
info(var)
22%
dir(var)
4%
?var
Объяснение:

Да, именно функция help() отвечает за вызов встроенной справочной системы. Она предназначена для интерактивного использования

Так, если аргумент не задан, то интерактивная справочная система запускается в консоли интерпретатора

А вот если аргумент является строкой, то она ищется как имя модуля, функции, класса, метода, ключевого слова или раздела документации, а страница справки выводится на консоль

В случае же, если аргумент является любым другим типом объекта, генерируется страница справки об объекте
Объяснение:

Да, в Python правильно создавать конструктор используя def __init__(параметры конструктора)

Необходимость конструкторов связана с тем, что нередко объекты должны иметь собственные свойства сразу. Конструктор класса не позволит создать объект без обязательных полей
Каким будет результат выполнения кода выше?
Anonymous Quiz
35%
Hello
9%
return "Hello"
9%
None
47%
Error
Объяснение:

В lambda-выражениях запрещено использовать ключевые слова, такие как pass, return и т.д
Каким будет результат выполнения кода выше?
Anonymous Quiz
4%
e
36%
l
4%
None
56%
Error
Объяснение:

В данном случае i равняется не 2, как могло бы показаться, а 2.0. Деление без остатка в Python выполняется с помощью //, а не /

По итогу в print() мы получаем не str_[2], а str_[2.0], что является ошибкой — индексом можем выступать лишь целочисленное значение
Каким будет результат выполнения кода выше?
Anonymous Quiz
6%
hello hello hello
13%
hello hello
35%
hello
46%
Error
Объяснение:

Умножение строки на n приводит к её дублированию n раз. При этом если n <= 0, то результатом будет пустая строка
Как создать приватную переменную в Python?
Anonymous Quiz
38%
__var
8%
var: private
3%
var
52%
Никак — в Python нет приватных переменных