Базовые типы (int, float, str, bool), присваивание, f-строки, type hints — первое, что проверяют на собеседовании по Python. Спрашивают про мутабельность, разницу между is и ==, приведение типов. Без уверенного знания основ синтаксиса невозможно перейти к более сложным темам.
Оператор `+` для строк выполняет конкатенацию, и обе стороны должны быть строками. Выражение `"Возраст: " + 18` вызывает `TypeError`, потому что `18` — это `int`. Корректные варианты: `"Возраст: " + str(18)` или f-строка `f"Возраст: {18}"`. В отличие от JavaScript Python не делает неявного приведения типа в этой ситуации.
Подробный разбор →В f-строке (например, `f"Привет, {name}!"`) всё, что внутри фигурных скобок `{}`, вычисляется как выражение Python и подставляется в итоговую строку. Поэтому при `name = "Анна"` получится `"Привет, Анна!"`. Если убрать префикс `f` — получится буквальный текст `"Привет, {name}!"`. Если переменная не определена — будет `NameError`, но в данном примере она определена.
Подробный разбор →`a = [1, 2]` и `b = [1, 2]` создают два отдельных списка с одинаковым содержимым, но это разные объекты в памяти. Поэтому `a == b` сравнивает значения и даёт `True`, а `a is b` сравнивает идентичность объектов и даёт `False`. Для маленьких целых чисел и коротких строк Python иногда переиспользует объекты, но для списков это не так: каждый литерал создаёт новый объект. Чтобы `is` дал `True`, нужно явно написать `b = a` — тогда обе переменные ссылаются на один и тот же список.
Подробный разбор →`.strip()` удаляет пробелы (и другие пробельные символы) в начале и конце строки. Внутренние пробелы он не трогает. Метод возвращает новую строку: исходная строка не изменяется.
Подробный разбор →`None` — особое значение «нет значения», и в Python принято проверять его через идентичность: `x is None`. Оператор `==` сравнивает значения и для `None` тоже сработает, но `is` яснее показывает намерение и быстрее. Присваивание `=` ничего не сравнивает, а `x == 0` проверяет совсем другое условие.
Подробный разбор →В приложении — таймер, прогресс, стрики и 1700+ вопросов по всем темам.
Тренировать Python в Telegram