Этот вопрос проверяет широту знаний разработчика о фундаментальных механизмах языка Python.
Начинающий разработчик должен понимать встроенные типы данных и уметь работать со структурами данных. Также важно знать ООП, принципы работы конструкторов и деструкторов. Декораторы, генераторы и итераторы формируют стиль написания современного Python-кода. Эти темы создают основу для понимания большинства библиотек и фреймворков.
Для уверенной работы на Python требуется понимание фундаментальных инструментов языка, которые формируют мышление разработчика и стиль написания кода.
Основные типы:
int, float, bool
str, bytes
list, tuple, set, dict
Важно понимать: мутабельность, особенности сравнения, поведение при копировании.
Используются для организации информации.
Очереди
Стэки
Связанные списки
Деревья
Хэш-таблицы
Понимание их свойств помогает выбирать правильные инструменты в коде.
Декоратор — это функция, принимающая другую функцию и возвращающая новую функцию с изменённым поведением.
Пример:
def logger(func):
def wrapper(*args, **kwargs):
print("call")
return func(*args, **kwargs)
return wrapper
Итератор — объект, который возвращает элементы по одному.
Генератор — удобный способ создавать итераторы через yield.
Пример:
def gen():
yield 1
yield 2
Ключевые понятия:
инкапсуляция
наследование
полиморфизм
Используются почти во всех веб-фреймворках и библиотеках.
__new__, __init__, __del____new__ — создание объекта
__init__ — инициализация данных
__del__ — финализация (редко используется)
Эти концепции формируют фундамент Python-разработчика и необходимы для работы с любыми фреймворками.