Logo
TGCATALOG
Каталог Подборки Блог
Python Вопросы собесов - тесты

Python Вопросы собесов - тесты

Вопросы, тесты и задачи для Python собеседований.

Нет оценок
599
29.10.2026
599
29.10.2026
Нет оценок
599
29.10.2026
Безопасный переход через бот
О канале

Вопросы, тесты и задачи для Python собеседований.

Подписчиков 12,569
Тематика Технологии
Язык Русский
Ссылка t.me/python_easy_ru

Также рекомендуем

Kekaton AI | Озвучка и клон голоса
Kekaton AI | Озвучка и клон голоса
Бот

AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.

Описание

Канал с вопросами для собеседований по Python. Тесты, задачи и материалы для подготовки.

Последние посты

Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Два способа создания класса В Python можно создать класс двумя основными способами: Через class (обычный способ) Через type() (динамическое создание класса) 🚩Обычное создание класса через `class` Это стандартный способ, который мы используем чаще всего. class Person: def __init__(self, name): self.name = name def say_hello(self): return f"Привет, я {self.name}!" p = Person("Алиса") print(p.say_hello()) # Привет, я Алиса! 🚩Динамическое создание класса через `type()` Функция type() позволяет создать класс "на лету". Person = type("Person", (object,), { "__init__": lambda self, name: setattr(self, "name", name), "say_hello": lambda self: f"Привет, я {self.name}!" }) p = Person("Боб") print(p.say_hello()) # Привет, я Боб! Ставь 👍 и забирай 📚 Базу знаний
Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Почему не рекомендуется авторизовываться через GET? Потому что: - Данные передаются в URL, и могут попасть в историю браузера, логи, прокси. - Это небезопасно, особенно для логинов, паролей и токенов. - GET предназначен для чтения, а не отправки чувствительных данных. POST — безопаснее, так как данные передаются в теле запроса, а не в адресной строке. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Что такое SDLC? Это методология управления процессом создания программного обеспечения, которая включает в себя последовательность этапов и действий, необходимых для разработки, тестирования, развертывания и поддержки программных продуктов. Цель SDLC — обеспечить структурированный и эффективный подход к разработке ПО, минимизируя риски и повышая качество конечного продукта. 🚩Основные этапы SDLC 🟠Планирование и анализ требований (Planning and Requirements Analysis) На этом этапе определяются цели проекта, анализируются потребности и требования к системе. Включает сбор требований от заинтересованных сторон, анализ бизнес-процессов и создание документации с описанием требований. Встречи с клиентами и пользователями для определения функций системы. Документирование функциональных и нефункциональных требований. 🟠Проектирование (Design) На этапе проектирования разрабатывается архитектура системы и ее компоненты. Создаются технические спецификации, включая схемы базы данных, диаграммы классов и интерфейсов, а также детализируется план реализации.Разработка диаграмм UML.Создание прототипов пользовательского интерфейса.Проектирование архитектуры системы. 🟠Разработка (Implementation or Coding) На этом этапе осуществляется непосредственная разработка программного обеспечения на основе спецификаций, созданных на предыдущем этапе. Кодирование выполняется в соответствии с выбранными языками программирования и инструментами разработки. Написание кода для модулей и компонентов системы. Интеграция различных компонентов системы. Регулярное использование систем контроля версий (например, Git). 🟠Тестирование (Testing) Этап тестирования включает проверку и валидацию системы для обнаружения и исправления ошибок. Тестирование проводится в различных формах, включая юнит-тестирование, интеграционное тестирование, системное тестирование и приемочное тестирование. Автоматизированное тестирование с использованием фреймворков, таких как pytest или JUnit. Ручное тестирование функциональности и пользовательского интерфейса. Тестирование производительности и безопасности. 🟠Развертывание (Deployment) На этом этапе программное обеспечение разворачивается в рабочей среде и становится доступным пользователям. Включает настройку серверов, развертывание баз данных и настройку инфраструктуры. Развертывание на облачных платформах, таких как AWS или Azure. Настройка и конфигурация серверов и сетей. Миграция данных и начальная загрузка данных. 🟠Поддержка и сопровождение (Maintenance) Этап поддержки и сопровождения включает в себя обслуживание и улучшение системы после ее развертывания. Включает исправление ошибок, обновление функциональности и оптимизацию производительности. Обновление системы безопасности. Внесение изменений на основе отзывов пользователей. Обслуживание серверов и баз данных. Ставь 👍 и забирай 📚 Базу знаний
Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Зачем нужен wraps? Функция wraps из модуля functools сохраняет оригинальное имя, документацию и сигнатуру оборачиваемой функции. Без неё у функции-декоратора теряется контекст. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Что быстрее python или c++? C++ быстрее Python, потому что: C++ — компилируемый язык, а Python — интерпретируемый. C++ работает ближе к "железу", а Python использует абстракции. C++ использует статическую типизацию, а Python динамическую (дополнительные проверки замедляют код). 🚩Разница в скорости выполнения Простой пример: сложение чисел в цикле Python (медленно) import time start = time.time() s = 0 for i in range(10_000_000): s += i end = time.time() print("Python:", end - start, "сек") Результат Python: 0.8 сек C++ (быстро) #include #include int main() { auto start = std::chrono::high_resolution_clock::now(); long long s = 0; for (int i = 0; i < 10000000; i++) { s += i; } auto end = std::chrono::high_resolution_clock::now(); std::cout
Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Что в python не является объектом? В Python практически всё является объектом: числа, строки, функции, классы, модули и даже сам интерпретатор Python рассматривает их как объекты. Однако есть несколько вещей, которые объектами не являются: 🟠Операторы и синтаксические конструкции Операторы (+, -, *, and, or, not и т. д.) сами по себе не являются объектами. Они — часть синтаксиса языка и не имеют представления в виде объектов в памяти. a = 10 + 5 # Оператор "+" выполняет сложение, но сам по себе не объект print(type(+)) # Ошибка: нельзя получить тип оператора 🟠Ключевые слова (keywords) Встроенные ключевые слова Python (if, else, while, for, def, class, return и т. д.) не являются объектами. Они зарезервированы интерпретатором и используются для управления потоком выполнения кода. print(type(if)) # Ошибка: ключевое слово не является объектом 🟠Идентификаторы переменных Хотя переменные ссылаются на объекты, сами идентификаторы (имена переменных) — это просто ссылки, а не объекты. x = 42 # x — это имя, а не объект print(type(x)) # Это целое число, но само имя "x" объектом не является 🟠Аннотации типов во время компиляции Аннотации типов в Python, такие как list[str], не создают объекты во время компиляции кода. Они интерпретируются только на уровне анализа типов. def func(x: int) -> str: return str(x) Ставь 👍 и забирай 📚 Базу знаний
Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Зачем нужны схемы в БД? Схема (schema) в базе данных — это логическая группировка объектов (таблиц, индексов, представлений и т. д.) внутри одной БД. 🚩Что такое схема в БД? Схема — это контейнер для объектов БД (таблиц, индексов, процедур). База данных (company_db) ├── Схема: public (по умолчанию) │ ├── Таблица: employees │ ├── Таблица: departments ├── Схема: hr │ ├── Таблица: employees │ ├── Таблица: salaries ├── Схема: sales │ ├── Таблица: customers │ ├── Таблица: orders 🚩Как создавать и использовать схемы? Создание схемы (CREATE SCHEMA) CREATE SCHEMA hr; -- Создаём схему "hr" Создание таблицы внутри схемы CREATE TABLE hr.employees ( id SERIAL PRIMARY KEY, name VARCHAR(100), position VARCHAR(50) ); Выбор схемы по умолчанию SET search_path TO hr; 🚩Где полезны схемы? 🟠Разделение данных по модулям Если в БД хранятся разные области бизнеса (кадры, продажи, финансы), их можно разделить по схемам: - hr.employees, hr.salaries - sales.orders, sales.customers 🟠Разные версии одной БД Например, в PostgreSQL можно создать схему dev для тестов: - dev.users — тестовая версия таблицы - prod.users — продакшен-версия 🟠Безопасность и доступ пользователей Можно дать доступ к разным схемам разным пользователям: GRANT USAGE ON SCHEMA hr TO hr_manager; GRANT SELECT ON ALL TABLES IN SCHEMA hr TO hr_manager; Ставь 👍 и забирай 📚 Базу знаний
Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Зачем нужны классы BaseExceptionGroup и ExceptionGroup? В Python 3.11 были добавлены новые классы исключений BaseExceptionGroup и ExceptionGroup. Эти классы решают проблему одновременной обработки нескольких исключений, которые могут возникать в сложных ситуациях, таких как асинхронное программирование, многопоточность или обработка нескольких связанных ошибок. Давайте разберем, зачем они нужны, как их использовать и какие преимущества они дают. 🚩Зачем нужны `BaseExceptionGroup` и `ExceptionGroup`? Ранее в Python было возможно выбросить только одно исключение за раз, и обработка нескольких исключений одновременно требовала сложного и неочевидного кода. Например: При работе с асинхронными функциями или потоками может возникнуть сразу несколько ошибок, и их нужно корректно обработать. В больших приложениях или библиотеках (например, при работе с asyncio) может быть необходимость передать сразу несколько исключений, которые произошли в разных местах, как единый объект. BaseExceptionGroup и его подкласс ExceptionGroup позволяют группировать несколько исключений и выбрасывать их вместе в виде одного объекта. Это делает код более читаемым, упрощает обработку и исключает необходимость ручной агрегации ошибок. 🚩Разница между `BaseExceptionGroup` и `ExceptionGroup` BaseExceptionGroup - это базовый класс для группировки исключений. Он наследуется от BaseException и, как правило, не используется напрямую. ExceptionGroup - это подкласс, который наследуется от Exception. Этот класс используется для обработки групп исключений, которые возникают при обычных ошибках в коде (не фатальных). 🚩Как они работают? Классы исключений BaseExceptionGroup и ExceptionGroup позволяют создать "группу исключений", которая содержит несколько отдельных исключений. Это полезно, когда вам нужно: Указать несколько ошибок одновременно. Позволить обработчику исключений работать с каждым из них. def task_1(): raise ValueError("Ошибка в задаче 1") def task_2(): raise TypeError("Ошибка в задаче 2") try: # Создаем группу исключений raise ExceptionGroup( "Ошибки в задачах", [ValueError("Ошибка в задаче 1"), TypeError("Ошибка в задаче 2")] ) except ExceptionGroup as eg: for exc in eg.exceptions: print(f"Обнаружено исключение: {exc}") Результат Обнаружено исключение: Ошибка в задаче 1 Обнаружено исключение: Ошибка в задаче 2 🚩Обработка групп исключений При обработке ExceptionGroup можно использовать механизм фильтрации с помощью конструкции except*. Это нововведение в Python 3.11 позволяет обрабатывать разные типы исключений внутри группы по-разному. try: raise ExceptionGroup( "Ошибки в задачах", [ValueError("Ошибка 1"), TypeError("Ошибка 2"), ValueError("Ошибка 3")] ) except* ValueError as ve: print("Обрабатываем ValueError:", ve) except* TypeError as te: print("Обрабатываем TypeError:", te) Результат Обрабатываем ValueError: Ошибка 1 Обрабатываем ValueError: Ошибка 3 Обрабатываем TypeError: Ошибка 2 🚩Преимущества использования ➕Работа с несколькими исключениями одновременно. Вы можете объединить связанные ошибки и передать их в одном объекте. ➕Четкое разграничение типов исключений. Использование except* позволяет обработать каждое исключение из группы отдельно, не теряя гибкости. ➕Удобство при асинхронном программировании. В асинхронных задачах (asyncio) часто возникает несколько ошибок одновременно, и их можно группировать для дальнейшей обработки. ➕Упрощение сложной логики. Код становится проще и понятнее, так как не нужно вручную собирать и разбирать исключения. 🚩Когда использовать? Когда вы работаете с несколькими задачами, которые могут порождать ошибки одновременно (например, асинхронный код). Когда вы хотите сообщить о нескольких связанных ошибках, не выбрасывая каждую из них отдельно. Когда требуется раздельная обработка разных типов ошибок. Ставь 👍 и забирай 📚 Базу знаний
Python Вопросы собесов - тесты
Python Вопросы собесов - тесты
🔒Открыть пост
и посмотреть медиа
🤔 Что такое git stash? git stash — это команда в Git, которая сохраняет незакоммиченные изменения во временное хранилище (stash) и очищает рабочую директорию. 🚩Когда это полезно? Нужно переключиться на другую ветку, но есть незаконченные изменения. Хочешь сохранить текущую работу, но не коммитить её. Нужно экспериментировать, но без риска потерять код. 🚩Как использовать `git stash`? Сохранить изменения в stash git stash Посмотреть список сохранённых изменений git stash list Выведет список всех stash-ов stash@{0}: WIP on main: 1234567 Добавил новую фичу stash@{1}: WIP on dev: 89abcde Исправил баг Восстановить сохранённые изменения git stash pop # Восстановит изменения и удалит stash ИЛИ git stash apply # Восстановит, но stash останется в списке Удалить stash после применения git stash drop stash@{0} # Удалит конкретный stash git stash clear # Удалит все stash'и 🚩Пример использования Сценарий - Ты работаешь в ветке main, но нужно срочно переключиться на dev. - У тебя есть изменения, которые ты не хочешь коммитить. Решение git stash # Сохраняем изменения git checkout dev # Переключаемся на другую ветку # Делаем нужную работу... git checkout main # Возвращаемся в основную ветку git stash pop # Восстанавливаем изменения Ставь 👍 и забирай 📚 Базу знаний
Python Вопросы собесов - тесты
Динамика подписчиков
+-1.0% за 30 дней
Текущие
12,569
Месяц назад
12,700
Средний рост
+-4 / день
Обновлено
22 часа назад

Отзывы о канале Python Вопросы собесов - тесты

Авторизуйтесь, чтобы оставить отзыв

Только зарегистрированные пользователи могут делиться своим мнением.

Пока нет отзывов

Станьте первым, кто поделится своим впечатлением об этом ресурсе!

Похожие ресурсы

Loading
Переход на светлую тему
Главная Каталог Подборки Блог Вход