ar
Feedback
Python | Вопросы собесов

Python | Вопросы собесов

الذهاب إلى القناة على Telegram

📈 نظرة تحليلية على قناة تيليجرام Python | Вопросы собесов

تُعد قناة Python | Вопросы собесов (@python_easy_ru) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 13 110 مشتركاً، محتلاً المرتبة 9 732 في فئة التكنولوجيات والتطبيقات والمرتبة 50 668 في منطقة روسيا.

📊 مؤشرات الجمهور والحراك

منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 13 110 مشتركاً.

بحسب آخر البيانات بتاريخ 05 يونيو, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار -48، وفي آخر 24 ساعة بمقدار -5، مع بقاء الوصول العام مرتفعاً.

  • حالة التحقق: غير موثّقة
  • معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 6.21‎%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 6.02‎% من ردود الفعل نسبةً إلى إجمالي المشتركين.
  • وصول المنشورات: يحصل كل منشور على متوسط 814 مشاهدة. وخلال اليوم الأول يجمع عادةً 789 مشاهدة.
  • التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 4.
  • الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل ставь, модуль, строка, docker, alice.

📝 الوصف وسياسة المحتوى

يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
Cайт: easyoffer.ru Реклама: @easyoffer_adv ВП: @easyoffer_vp Тесты t.me/+20tRfhrwPpM4NDQy Задачи t.me/+nsl4meWmhfQwNDVi Вакансии t.me/+cXGKkrOY2-w3ZTky

بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 06 يونيو, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.

13 110
المشتركون
-524 ساعات
-147 أيام
-4830 أيام
أرشيف المشاركات
🤔 Какие объекты можно положить в множество? В Python множество (set) — это неупорядоченная коллекция уникальных элементов, которая работает на основе хеш-таблицы. Это значит, что только хешируемые (immutable) объекты могут быть добавлены в set. 🚩Можно добавить в `set`: Числа (int, float, complex)
   s = {1, 2.5, 3+4j}
Строки (str)
   s = {"apple", "banana", "cherry"}
Кортежи (tuple), если они тоже содержат только неизменяемые объекты
   s = {(1, 2), ("a", "b")}
Булевые значения (bool)** (но True считается 1, а False0)
   s = {True, False, 1, 0}
   print(s)  # {False, True} (0 и 1 не добавятся повторно)
🚩Нельзя добавить в `set` Изменяемые объекты (list, set, dict)
   s = { [1, 2, 3] }  #  Ошибка: TypeError: unhashable type: 'list'
   s = { {"key": "value"} }  #  Ошибка: TypeError: unhashable type: 'dict'
Кортежи с изменяемыми элементами
   s = { (1, [2, 3]) }  #  Ошибка: TypeError
Ставь 👍 и забирай 📚 Базу знаний

🤔 Что делать, если нужно сериализовать данные, которые не поддерживаются стандартным модулем json? Можно передать параметр default с функцией, преобразующей неподдерживаемые объекты. Либо использовать другой модуль, например pickle. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что такое клиент-серверная архитектура? Клиент-серверная архитектура – это модель взаимодействия устройств, где клиент запрашивает данные или услуги, а сервер их предоставляет. 🚩Как это работает? Клиент – это программа или устройство, которое отправляет запросы (например, браузер). Сервер – это программа или устройство, которое обрабатывает запросы и отправляет ответ (например, веб-сервер). Сервер (сервер.py)
import socket

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)  
server.bind(("localhost", 8080))  # Привязываем сервер к адресу и порту
server.listen(1)  # Ожидаем подключения одного клиента
print("Сервер запущен и ждёт подключения...")

conn, addr = server.accept()  # Принимаем подключение
print(f"Подключен клиент: {addr}")

data = conn.recv(1024).decode()  # Читаем данные от клиента
print(f"Клиент прислал: {data}")

conn.send("Привет от сервера!".encode())  # Отправляем ответ клиенту
conn.close()
Клиент (клиент.py)
import socket

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(("localhost", 8080))  # Подключаемся к серверу

client.send("Привет, сервер!".encode())  # Отправляем сообщение
response = client.recv(1024).decode()  # Получаем ответ от сервера

print(f"Ответ сервера: {response}")
client.close()
🚩Как это работает? 1⃣Запускаем сервер.py. Он ждёт подключения. 2⃣Запускаем клиент.py. Клиент подключается к серверу и отправляет сообщение. 3⃣Сервер получает сообщение, отвечает клиенту и закрывает соединение. 4⃣Клиент принимает ответ и завершает работу. 🚩Типы клиент-серверных архитектур Одноуровневая – клиент общается напрямую с сервером. Двухуровневая – классическая схема "клиент сервер" (например, браузер веб-сервер). Трёхуровневая – добавляется база данных (например, клиент сервер БД). Многоуровневая – сложные распределённые системы с несколькими серверами (например, микросервисы). Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое UDP? UDP (User Datagram Protocol) — лёгкий и быстрый протокол без гарантии доставки: - Нет установления соединения. - Пакеты могут приходить в любом порядке или теряться. - Быстрее TCP, но ненадёжнее. Часто используется в видеозвонках, онлайн-играх, стриминге, где важна скорость, а не идеальная точность. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что такое GET? GET — это HTTP-метод, который используется для запроса данных с сервера. Когда ты открываешь веб-сайт или вводишь URL в браузере — это GET-запрос. Браузер запрашивает страницу у сервера, и сервер возвращает данные. 🚩Как работает GET-запрос? 1⃣Клиент (браузер, программа) отправляет GET-запрос на сервер. 2⃣Сервер обрабатывает запрос и возвращает ответ (HTML-страницу, JSON-данные, картинку и т. д.). 3⃣Данные отображаются пользователю. 🚩Пример GET-запроса Когда ты заходишь на https://example.com/users, браузер отправляет:
GET /users HTTP/1.1
Host: example.com
Ответ сервера
[
    {"id": 1, "name": "Alice"},
    {"id": 2, "name": "Bob"}
]
🚩Особенности GET-запроса 🟠Читаемый URL параметры передаются в строке запроса (например, ?id=123). 🟠Безопасен GET не изменяет данные на сервере. 🟠Можно кэшировать браузеры и серверы могут сохранять результаты GET-запросов. 🟠Ограниченная длина URL слишком длинные запросы могут не работать. 🟠Не подходит для конфиденциальных данных передача пароля в URL (?password=123) небезопасна. 🚩GET-запрос с параметрами Если нужно передать параметры, они добавляются в URL:
GET /search?q=python&page=2
В Python можно отправить GET-запрос с помощью библиотеки requests
import requests

response = requests.get("https://api.example.com/users", params={"id": 123})
print(response.json())  # Получаем ответ в JSON
Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое Self Join? Self Join — это соединение таблицы самой с собой, как будто это две разные таблицы. Используется, например, для иерархических структур (менеджер-сотрудник), где один объект связан с другим того же типа. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как происходит наследование моделей в Django? В Django можно наследовать модели, используя стандартное наследование классов. Это помогает повторно использовать код, организовывать данные и добавлять общие поля в несколько моделей. Django поддерживает три основных типа наследования: 🟠Абстрактные модели Абстрактные модели используются, когда нужно создать базовый класс с полями и методами, которые должны быть унаследованы, но сам класс не должен создавать таблицу в базе данных. Создается базовый класс с abstract = True в Meta. Дочерние классы наследуют его поля и методы, но не его саму в виде отдельной таблицы.
from django.db import models

class BaseModel(models.Model):
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

    class Meta:
        abstract = True  # Указывает, что это абстрактная модель

class Post(BaseModel):
    title = models.CharField(max_length=255)
    content = models.TextField()

class Comment(BaseModel):
    text = models.TextField()
🟠Многоуровневое (конкретное) наследование Этот тип наследования создаёт отдельные таблицы для каждой модели. Используется, когда дочерний класс должен представлять отдельную сущность, но при этом иметь доступ к полям родительского класса. Django создаёт отдельные таблицы в БД для родительской и дочерней модели. Дочерняя модель автоматически получает OneToOneField на родительскую.
class Person(models.Model):
    name = models.CharField(max_length=255)

class Employee(Person):  # Отдельная таблица employee
    salary = models.DecimalField(max_digits=10, decimal_places=2)
🟠Прокси-модели (Proxy Models) Используются, когда нужно изменить поведение модели без изменения структуры базы данных. Прокси-модель наследует поля родительской модели. В Meta указывается proxy = True. Можно переопределять методы, добавлять новые, но не менять поля.
class Person(models.Model):
    name = models.CharField(max_length=255)

class Manager(Person):
    class Meta:
        proxy = True  # Указываем, что это прокси-модель

    def get_uppercase_name(self):
        return self.name.upper()
Ставь 👍 и забирай 📚 Базу знаний

🤔 Что знаешь про singleton? Singleton — это паттерн проектирования, который ограничивает инстанцирование класса одним объектом. В Python его можно реализовать с помощью модуля или класса с использованием приватного конструктора и метода класса для доступа к экземпляру. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Какие есть высокоуровневые языки программирования? Предоставляют более высокую степень абстракции от аппаратного обеспечения компьютера, чем низкоуровневые языки. Они ориентированы на удобство программирования, упрощение разработки, читаемость и поддержку кода. Эти языки скрывают детали работы с памятью и процессором, позволяя программистам сосредоточиться на логике приложения. 🚩Основные высокоуровневые языки программирования: 🟠Python Веб-разработка, анализ данных, научные исследования, искусственный интеллект, автоматизация.
def greet(name):
    return f"Hello, {name}!"

print(greet("World"))     
🟠Java Разработка корпоративного ПО, веб-приложений, мобильных приложений (Android), больших распределенных систем.
public class Main {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
   }
}
     
🟠C# Разработка настольных приложений, веб-приложений, игр (с использованием Unity), облачных сервисов.
using System;

class Program {
    static void Main() {
        Console.WriteLine("Hello, World!");
    }
}     
🟠JavaScript Веб-разработка, создание интерактивных пользовательских интерфейсов, серверные приложения, мобильные приложения (с использованием фреймворков, таких как React Native).
function greet(name) {
    return `Hello, ${name}!`;
}

console.log(greet("World"));     
🟠Ruby Веб-разработка, скрипты автоматизации, создание прототипов.
def greet(name)
  "Hello, #{name}!"
end

puts greet("World")     
🟠PHP Веб-разработка, серверные приложения, управление контентом.
<?php
function greet($name) {
    return "Hello, $name!";
}

echo greet("World");
?>     
🟠Swift Разработка мобильных и настольных приложений для экосистемы Apple.
func greet(name: String) -> String {
    return "Hello, \(name)!"
}

print(greet(name: "World"))     
🟠Kotlin Разработка Android-приложений, серверных приложений, веб-приложений.
fun greet(name: String): String {
    return "Hello, $name!"
}

fun main() {
    println(greet("World"))
}     
🟠Go (Golang) Разработка серверных приложений, облачных сервисов, микросервисов.
package main
import "fmt"

func main() {
   fmt.Println("Hello, World!")
}     
🟠Rust Системное программирование, разработка высокопроизводительных приложений, безопасное многопоточность.
fn main() {
    println!("Hello, World!");
}
Ставь 👍 и забирай 📚 Базу знаний

🤔 Как открывается WebSocket? Соединение начинается с HTTP-запроса, который просит сервер перейти на протокол WebSocket. Если сервер согласен, он отвечает подтверждением, после чего создаётся постоянный канал связи, через который обе стороны могут отправлять и получать данные без повторной авторизации. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что в 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)
Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое git stash? git stash — это временное сохранение текущих изменений в "карман", чтобы вернуться к чистому состоянию рабочего каталога. Это удобно, если нужно переключиться на другую ветку, не делая коммит. Позже можно восстановить изменения или удалить их. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Какие есть коды ошибок HTTP? В HTTP коды состояния указывают, как сервер обработал запрос. Они делятся на 5 категорий: 1xx (Информационные – запрос принят, продолжаем. 2xx (Успешные) – всё хорошо. 3xx (Перенаправления) – запрашиваемый ресурс перемещён. 4xx (Ошибки клиента) – клиент отправил неправильный запрос. 5xx (Ошибки сервера) – сервер не смог обработать запрос. 🚩Как исправить ошибки HTTP? 4xx: 400: Проверить формат запроса. 401: Убедиться, что пользователь авторизован. 403: Проверить права доступа. 404: Убедиться, что URL правильный. 5xx: 500: Проверить код сервера (ошибки в логах). 502/504: Проверить настройки Nginx/Proxy. 503: Сервер перегружен → добавить балансировку нагрузки. Ставь 👍 и забирай 📚 Базу знаний

🤔 Чем отличается re.match от re.search? - re.match() проверяет только начало строки на соответствие шаблону. Если начало не совпадает — возвращает None. - re.search() ищет соответствие в любом месте строки и возвращает первое совпадение. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Почему плохо хранить данные SQL в Docker контейнере? Хранение данных базы данных (SQL) внутри Docker-контейнера не рекомендуется, потому что контейнеры являются временными и одноразовыми. При удалении или пересоздании контейнера все данные внутри него теряются. 🚩Данные удаляются при удалении контейнера Контейнеры в Docker спроектированы так, чтобы их можно было легко пересоздавать. Если удалить контейнер (docker rm), все данные, хранящиеся внутри него, исчезнут навсегда.
docker run --name mydb -e MYSQL_ROOT_PASSWORD=secret -d mysql
docker stop mydb
docker rm mydb  # Удаляем контейнер – все данные пропали!
🚩Проблемы с обновлением и масштабированием Если база данных хранится внутри контейнера, обновить версию MySQL/PostgreSQL будет сложно. При пересоздании контейнера все данные потеряются, и их придется восстанавливать из резервной копии. 🚩Низкая производительность I/O Хранение данных внутри контейнера может снизить скорость работы базы, потому что Docker использует копию на запись (Copy-on-Write, CoW). Решение — использовать прямые тома (volumes) или монтировать каталог хоста.
docker run --name mydb -v /data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=secret -d mysql
🚩Проблемы с резервным копированием Если база находится внутри контейнера, то сделать бэкап или восстановить данные сложно. Лучшее решение: использовать volumes + делать бэкапы через mysqldump или pg_dump.
docker exec mydb mysqldump -u root -psecret mydatabase > backup.sql
Ставь 👍 и забирай 📚 Базу знаний

🤔 Виды форматирования строк? – Через оператор % (устаревший стиль). – Метод .format(). – f-строки (f"{переменная}"). – Конкатенация (+), если речь не о форматировании, а о сложении. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что такое 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 разработчиков. - Вакансии которых нет на джоб-агрегаторах - Только прямые контакты HR
👩‍💻 Стажировки и вакансии для Python разработчиков. - Вакансии которых нет на джоб-агрегаторах - Только прямые контакты HR в Telegram 👉 @jobs_python Больше тут: 🤖 ML & DS 👩‍💻 DevOps 👨‍✈️ ИБ & OSINT 👣 Go 👩‍💻 Mobile 👩‍💻 C# 👩‍💻 Node.js 👩‍💻 Python 🔎 QA 👩‍💻 Java 👩‍💻 UX/UI 👩‍💻 Frontend 🖼️ PHP 📋 Analyst 💼 1C 🖥 SQL 👩‍💻 IT HR Пока другие листают джоб-сайты — ты уже пишешь HR в Telegram.

🤔 Как посмотреть количество доступной ОЗУ на Linux? Можно использовать системные утилиты, которые выводят сведения об объёме оперативной памяти, её использовании и свободном объёме. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Cловари {dict}? Словарь (dict) — это структура данных, которая хранит пары "ключ → значение". 🟠Создание словаря Через {} (фигурные скобки)
my_dict = {"name": "Alice", "age": 25, "city": "New York"}
Изменение значения
my_dict["age"] = 26  # Меняем возраст
del — удаление по ключу
del my_dict["city"]
Перебор ключей (for key in dict)
for key in my_dict:
    print(key, my_dict[key])
Проверка наличия ключа
if "name" in my_dict:
    print("Ключ существует!")
🟠Генерация словарей (Dictionary Comprehension) Создадим словарь квадратов чисел
squares = {x: x**2 for x in range(1, 6)}
print(squares)  # {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
🟠Ключи должны быть хешируемыми (неизменяемыми) Нельзя использовать list как ключ!
my_dict[[1, 2, 3]] = "Ошибка"  # TypeError: unhashable type: 'list'
Можно использовать tuple, int, str, frozenset
my_dict[(1, 2, 3)] = "OK"
Ставь 👍 и забирай 📚 Базу знаний