Skip to content

Latest commit

 

History

History
62 lines (56 loc) · 4.52 KB

README.md

File metadata and controls

62 lines (56 loc) · 4.52 KB

python-interview

Список часто встречающихся и наиболее интересных вопросов на интервью для Python разработчика

Вопросы низкой сложности

  1. Что такое генератор?
  2. Чем отличается list от tuple?
  3. Чем отличается set от dict?
  4. Что такое list comprehension?
  5. Есть ли ООП в Python?
  6. Какие коллекции из стандартной библиотеки вы знаете?
  7. Что такое декоратор? Как он работает? Зачем он нужен?
  8. Напишите декоратор, считающий время выполнения функции и выводящий это в стандартный поток вывода
  9. Что такое контекстный менеджер? Как он работает? Зачем он нужен?
  10. Напишите контекстный менеджер, считающий время выполнения контекста(блока) и выводящий это в стандартный поток вывода
  11. Что такое статическая и динамическая типизация? Что значит понятие "duck typing"?
  12. Что такое изменяемые и неизменяемые объекты? Приведите примеры изменяемого и неизменяемого объекта.
  13. Что такое передача данных в функцию по ссылке и по значению? Как это происходит в Python?

Вопросы средней сложности

  1. Чем генератор отличается от итератора?
  2. Какие методы есть у объекта генератора?
  3. Как хранятся в памяти list / tuple / dict / set ?
  4. Что такое GIL?
  5. Зачем нужен GIL? И зачем его добавили в язык?
  6. Как во множественном наследовании отрабатывается поиск атрибута?
  7. Что такое __slots__?
  8. Какие объекты могут выступать в роли ключа для dict?
  9. Что вернет sys.getsizeof(42)?
  10. Есть ли интерфейсы (ООП) в Python?
  11. Что такое super() в Python?
  12. Что такое мета-классы? Зачем они нужны?
  13. Чем @staticmethod отличается от @classmethod?
  14. Что такое __new__? Чем он отличается от __init__?
  15. Что такое "CPython"?
  16. Какие линтеры для языка Python вы знаете? Зачем они нужны?
  17. Зачем нужна библиотека threading? Чем она отличается от библиотеки multiprocessing?
  18. Как написать свой итератор в Python? Какие методы необходимо реализовать?
  19. Зачем нужен файл __init__.py?
  20. Есть ли абстрактные классы в Python?
  21. Что такое аннотирование типов в Python? Зачем это нужно?
  22. Что такое @dataclass?
  23. Что такое "virtual env"?
  24. Какие системы управления зависимостями в Python вы знаете?
  25. Что такое асинхронное программирование? Чем оно отличается от многопоточного?
  26. Что делает ключевое слово await в Python?
  27. Что такое .whl файл?
  28. Что такое PyPI?
  29. Что такое pyenv? Как установить разные версии Python на компьютер?

Вопросы высокой сложности

  1. Что такое Python "bindings"?
  2. Что такое ковариантные / контр-вариантные / инвариантные типы?
  3. Что такое дескриптор? Какой протокол дескриптора? Какие методы?
  4. Что такое @property?
  5. Что такое stub файл в Python?
  6. Как Python выделяет память под объекты в вашей программе?
  7. Как устроен GC в Python? Что такое "reference counting"?
  8. Как запустить код на Java/C/C++/Go из Python?
  9. В каком году появился Python?