Начинаем серию статей со списками вопросов, которые задают на технических собеседованиях питонистам. Разумеется, в эти списки войдут не все возможные вопросы, а некоторые из них могут показаться странными или даже тупыми, но все же стоит быть готовым к тому, что вам их зададут.
- Python: вопросы собеседования. Часть I. Junior
- Python: вопросы собеседования. Часть II. Middle
- Python: вопросы собеседования. Часть III. Senior
Вопросы
- Что такое Python?
- Что такое
lambda
в Python? - Что означает
pass
в Python? - Что обозначают
*args
и**kwargs
при определении функции в Python? - Что такое
docstring
в Python? - Какие в Python существуют встроенные типы данных? Какие из них изменяемые, а какие неизменяемые?
- В чем разница между списками и кортежами?
- Какие ключевые слова могут быть использованы вместе с ключевым словом
for
? - Какие могут быть ключи в словарях Python?
- В чем разница между
globals()
,locals()
, иvars()
? - Что такое PEP8?
- Как работают срезы в Python?
- Что значит отрицательный индекс в Python?
- Что такое модуль
__init__.py
? Для чего он нужен? - Как можно поменять значения двух переменных в Python?
- Как можно посмотреть все методы объекта?
- Как можно получить документацию по методам объекта Python?
- Что такое модуль в Python? Что такое пакет в Python? В чем разница между пакетом и модулем?
- Можете ли вы написать многопоточное приложение в Python? В чем разница между мнгопоточностью (multithreading) и многопроцессностью (multiprocessing)?
- Что такое декораторы в Python? Как создать свой собственный декоратор?
- Что такое
@classmethod
,@staticmethod
,@property
? - В чем разница между
@classmethod
и@staticmethod
? - Поддерживает ли Python в полной мере объектно-ориентированное программирование?
- Что такое атрибут
__dict__
объекта Python? - Что значит
self
? - Что делают функции
__init__
? - Расскажите, как сделать исполняемый скрипт Python в операционной системе Unix.
- Что такое сериализация (pickling) и десериализация (unpickling) в Python?
Вопросы с кодом
- Как преобразовать строку, содержащую бинарный код (
0
или1
), в число (целого типа)? Напишите программу, которая будет это делать. - Как проверить, что кортеж A содержит в себе все элементы кортежа B? Напишите программу, которая это будет выполнять.
- Какой будет результат выполнения следующего кода:
def f(): x = 15 print(x) x = 12 f()
- Как преобразовать строку в число, состоящее из ASCII-кодов? Напишите программу для этой операции.
- Как удалить пустые строки (длиной 0) из списка строк? Напишите программу для этого.
- Создайте строку из чисел от
0
до100
следующего вида:"0123456789101112..."
- Преобразуйте список, где есть повторяющиеся элементы, в список, где все элементы уникальны.
- Создайте список всех простых чисел, лежащих в диапазоне от
0
до100
.
Следующая часть: Python: вопросы собеседования. Часть II. Middle