реклама
разместить

ТОП-5 вопросов повышенной сложности на собеседовании по Python

Метаклассы, дескрипторы, модификаторы доступа – звучит сложно? Разберем 5 вопросов, которые часто задают на собеседованиях по Python.
Метаклассы, дескрипторы, модификаторы доступа – звучит сложно? Разберем 5 вопросов, которые часто задают на собеседованиях по Python.

В начале этой статьи я бы хотел немного познакомиться с вами. Меня зовут Кирилл и достаточно долгое время я провел в должности тех. лида и, исходя из этого, мне нужно было часто проводить собеседования. Сам я Full-Stack и из-за частых собесов у меня сформировался определенный топ интересных вопросов, который я задаю на собеседовании.

1. Что такое метаклассы?

Метакласс – это класс, который определяет свойства других классов. С помощью метакласса мы можем определять свойства, которые следует добавлять в новые классы, определенные в нашем коде. То есть исходя из этого – метаклассы мы можем использовать в качестве конструктора для наших классов.

ТОП-5 вопросов повышенной сложности на собеседовании по Python

2. Что такое дескрипторы и как их использовать?

Если говорить в общем, то дескриптор — это атрибут объекта со связанным поведением (англ. binding behavior), т. е. такой, чьё поведение при доступе переопределяется методами протокола дескриптора. Эти методы: get, setи delete. Если хотя бы один из этих методов определён для объекта, то он становится дескриптором. Стандартное поведение при доступе к атрибутам — это получение, установка и удаление атрибута из словаря объекта.

ТОП-5 вопросов повышенной сложности на собеседовании по Python

3. Что такое модификаторы доступа и как с ними работать?

Все поля, методы и остальные компоненты класса имеют модификаторы доступа. Модификаторы доступа позволяют задать допустимую область видимости для компонентов класса. То есть модификаторы доступа определяют контекст, в котором можно употреблять данную переменную или метод.

private: закрытый или приватный компонент класса или структуры. Приватный компонент доступен только в рамках своего класса или структуры. В Python объявляется с помощью двух нижних подчеркиваний __.

protected: такой компонент класса доступен из любого места в своем классе или в производных классах. При этом производные классы могут располагаться в других сборках. В Python объявляется с помощью одного нижнего подчеркивания _.

public: публичный, общедоступный компонент класса или структуры. Такой компонент доступен из любого места в коде, а также из других программ и сборок. В Python объявляется без нижних подчеркиваний.

Важно понимать, что подчеркивания несут скорее документальный характер, так как в Python модификаторов доступа нет и это лишь помощь в том, чтобы по коду было понятно с чем мы работаем

ТОП-5 вопросов повышенной сложности на собеседовании по Python

4. Почему числа не равны?

Это связано с тем что Python хранит данные данные от -5 до 256 в одной ячейке памяти, то есть две переменные будут указателями на одну ячейку в области памяти. Если цифра превышает этот лимит, то для нее создается отдельная ячейка в памяти.

Оператор is проверяет указывают ли переменные на одинаковую область в памяти

ТОП-5 вопросов повышенной сложности на собеседовании по Python

5. Что такое каррирование?

Каррирование — продвинутая техника для работы с функциями. Она используется не только в Python, но и в других языках.

Каррирование — это трансформация функций таким образом, чтобы они принимали аргументы не как f(a, b, c), а как f(a)(b)(c).

Каррирование не вызывает функцию, оно только трансформирует её. Каррированием также называют уменьшение арности функции.

ТОП-5 вопросов повышенной сложности на собеседовании по Python

Мой канал в ТГ – https://t.me/ptworl. Мой канал по Python в Ютубе – youtube.com/@ptworl

реклама
разместить
Начать дискуссию
Госдума приняла законопроект о запрете рекламы на «нежелательных» и «запрещённых» сайтах — например, в Instagram* и Facebook*

За нарушение грозят штрафы.

2626
1212
22
"Порой даже не задумываясь, они переводят деньги тем, кто намеренно вредит нашей стране" Да вроде бы эти деньги не депутатам Госдумы уходят.
реклама
разместить
Минцифры предложило обязать банки выплачивать компенсацию пострадавшим от дропперов

Если обнаружатся и подтвердятся «дыры» в системе безопасности банка.

66
Из школы сразу в IT-компанию: опыт no-code разработчика

История о том, как начать работать в IT без образования и опыта

Из школы сразу в IT-компанию: опыт no-code разработчика
1212
66
Мой пункт выдачи заказов Ozon: Полгода с момента открытия. Показываю цифры.

Парень открыл ПВЗ Озона и делится цифрами за полгода работы. Без прикрас, всё как оно есть на самом деле.

Мой пункт выдачи заказов Ozon: Полгода с момента открытия. Показываю цифры.
3838
55
44
33
Большое помещение на 2 входные группы, мог бы и Озон и ВБ одновременно открыть, а теперь ВБ отжирает половину выручки
Дубайский YallaMarket с основателями из России решил закрыться после четырёх лет работы

Компания не смогла выстроить устойчивую бизнес-модель, а финансовые ресурсы и энергия команды «иссякли».

99
55
11
11
На Kickstarter представили ручку-трансформер Zero Mk2 — её можно носить в кошельке как банковскую карту

Состоит из 54 деталей. Собирается за 3-4 секунды.

88
77
44
33
11
О, это же легендарная финка нквд от корейских мастеров!
Как мы создали живое сообщество вокруг аниме-сериала «Санек и Борян» за 3 дня до премьеры

Всем привет, меня зовут Виталий Вебер, я лид соцсетей Учебника Т—Ж. В один прекрасный день мне выпала возможность, от которой я, как фанат аниме, не мог отказаться: создать и вести соцсети для нового аниме-сериала «Санек и Борян». Это сериал про обычного парня, который пытается решить жизненные проблемы, а умный тапир Борян всячески помогает ему со…

Как мы создали живое сообщество вокруг аниме-сериала «Санек и Борян» за 3 дня до премьеры
Госдума приняла законопроект о борьбе с телефонным и кибермошенничеством

Он в том числе запрещает массовые звонки без согласия, передачу SIM-карт третьим лицам и позволяет назначить «уполномоченное лицо» для подтверждения банковских операций.

1111
55
Меры хорошие. Но никак не воздействуют на коренные причины процветания телефонного мошенничества. Готовность людей поверить в любой бред, уверенно сказанный начальственным тоном. И общий упадок критического мышления.
SuperJob начал тестировать «аукционы» — работодатели смогут открыто «торговаться» за соискателя

Перебивать предложения других компаний — по зарплате и условиям.

Скриншот SuperJob
3333
2727
22
11
Когда сильно увлекся клепанием фич.
реклама
разместить
Раздутые метрики, «хардкорные» условия и клиенты, которых нет: ИИ-стартап 11x столкнулся с финансовыми проблемами из-за собственных действий

История настолько «скандальная», что достойна экранизации, считает собеседник TechCrunch.

На фото команда 11x.ai
88
11
11
11
В Telegram Wallet добавили поддержку Ethereum, Solana, Dogecoin и других криптовалют

До этого кошелёк поддерживал только Toncoin и нативные токены блокчейна TON, а также USDT и биткоин.

Изображение Telegram Wallet
77
День 1126: с марта 2022 года российский рынок покинули 62% компаний из «недружественных» стран

Собираем новости, события и мнения о рынках, банках и реакциях компаний.

Фото «РИА Новости» 
1111
33
22
"К лету вернутся" (c)
[]