ar
Feedback

لا تقع ضحية للمخادعين! تيليمتريو يكتشف ويُميّز هذه القنوات 👉 إذا كنت تريد رؤية العلامة، اشترك

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

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

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

Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @sendme_ads

إظهار المزيد

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

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

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

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

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

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

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

يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
“Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @sendme_ads”

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

12 635
المشتركون
لا توجد بيانات24 ساعات
-277 أيام
-10930 أيام
أرشيف المشاركات
🤔 Как пропустить заблокированные поля в БД при использовании select? Чтобы пропустить заблокированные поля в БД при выполнении запроса `SELECT`, можно: 1. Явно указать в запросе только те столбцы, которые доступны, вместо использования `SELECT *`. 2. Убедиться, что права доступа на уровне пользователя или роли не запрещают чтение нужных столбцов. 3. Использовать средства обработки ошибок в коде, чтобы обрабатывать исключения, если доступ к полю невозможен. Это помогает избежать ошибок и выполнить запрос успешно. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Обучение на Frontend-разработчика. С нуля за 9 месяцев. На курсе вы получите все навыки, необходимые для старта в профессии Frontend-разработчика. Персональный наставник middle/senior уровня. 14 проектов, лайвкодинг, хакатоны, репетиции техсобеседования. Освоите JavaScript, React, TypeScript Официальный диплом и сертификат школы. Поддержка наставника по JS в течение 3-х месяцев после диплома. Гарантия трудоустройства. Если вы не устроитесь, вернём деньги. Это закреплено в договоре п. 6.14 С 9 по 30 ноября 2024 г. скидка 40% на все программы Result School Узнать больше #реклама 16+ result.school О рекламодателе

🤔 Методы getitem и setitem и delitem? Позволяют объектам вашего класса работать как контейнеры, подобные спискам или словарям. Они отвечают за доступ к элементам, установку значений элементов и удаление элементов по индексам или ключам. 🟠Метод `getitem` Используется для доступа к элементам объекта по индексу или ключу. Он вызывается, когда вы используете синтаксис квадратных скобок для доступа к элементу.
class MyList:
    def __init__(self, items):
        self.items = items
    
    def __getitem__(self, index):
        return self.items[index]

# Примеры использования
my_list = MyList([1, 2, 3, 4])
print(my_list[0])  # Вывод: 1
print(my_list[2])  # Вывод: 3
🟠Метод `setitem` Используется для установки значений элементов по индексу или ключу. Он вызывается, когда вы используете синтаксис квадратных скобок для установки значения элемента.
class MyList:
    def __init__(self, items):
        self.items = items
    
    def __setitem__(self, index, value):
        self.items[index] = value

# Примеры использования
my_list = MyList([1, 2, 3, 4])
my_list[1] = 10
print(my_list.items)  # Вывод: [1, 10, 3, 4]
🟠Метод `delitem` Используется для удаления элементов по индексу или ключу. Он вызывается, когда вы используете синтаксис del с квадратными скобками.
class MyList:
    def __init__(self, items):
        self.items = items
    
    def __delitem__(self, index):
        del self.items[index]

# Примеры использования
my_list = MyList([1, 2, 3, 4])
del my_list[2]
print(my_list.items)  # Вывод: [1, 2, 4]
Пример использования всех методов вместе
class CustomDict:
    def __init__(self):
        self.data = {}
    
    def __getitem__(self, key):
        return self.data[key]
    
    def __setitem__(self, key, value):
        self.data[key] = value
    
    def __delitem__(self, key):
        del self.data[key]

# Примеры использования
custom_dict = CustomDict()
custom_dict['a'] = 1
custom_dict['b'] = 2
print(custom_dict['a'])  # Вывод: 1
print(custom_dict['b'])  # Вывод: 2

del custom_dict['a']
print(custom_dict.data)  # Вывод: {'b': 2}
Ставь 👍 и забирай 📚 Базу знаний

🤔 Какие основные HTTP методы знаешь? Основные HTTP методы включают: - `GET` для получения данных с сервера. - `POST` для отправки данных на сервер (создание ресурса). - `PUT` для обновления или создания ресурса. - `DELETE` для удаления ресурса. - `PATCH` для частичного обновления ресурса. - `HEAD` для получения заголовков без тела ответа. - `OPTIONS` для получения информации о поддерживаемых методах. Эти методы обеспечивают основное взаимодействие клиента и сервера. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Yandex DataLens Festival, 2-18 декабря Для аналитиков, тимлидов, разработчиков, продактов и маркетологов. Эксперты Яндекса по
Yandex DataLens Festival, 2-18 декабря Для аналитиков, тимлидов, разработчиков, продактов и маркетологов. Эксперты Яндекса поделятся опытом. Онлайн и бесплатно Зарегистрироваться #реклама 16+ yandex.cloud О рекламодателе

🤔 Методы call? Позволяет объектам вашего класса быть вызываемыми как функции. Когда вы определяете этот метод в своем классе, вы можете использовать экземпляры этого класса как функции. 🚩Зачем нужен Полезен, когда вы хотите, чтобы объекты вашего класса могли выполнять какое-то действие при вызове. Это может быть полезно для реализации шаблонов проектирования, таких как замыкания, обработчики событий, или просто для удобства, если объект должен часто выполнять одно и то же действие. 🚩Как использовать Для того чтобы использовать метод __call__, нужно его определить в своем классе. Этот метод может принимать любые аргументы, как и обычные функции.
class Counter:
    def __init__(self):
        self.count = 0
    
    def __call__(self):
        self.count += 1
        print(f"Count is now {self.count}")

# Примеры использования
counter = Counter()
counter()  # Вывод: Count is now 1
counter()  # Вывод: Count is now 2
counter()  # Вывод: Count is now 3
Пример использования с аргументами
class Adder:
    def __init__(self, value):
        self.value = value
    
    def __call__(self, x):
        return self.value + x

# Примеры использования
add5 = Adder(5)
print(add5(10))  # Вывод: 15
print(add5(20))  # Вывод: 25
Пример более сложного использования
class Polynomial:
    def __init__(self, coefficients):
        self.coefficients = coefficients
    
    def __call__(self, x):
        result = 0
        for power, coef in enumerate(self.coefficients):
            result += coef * (x ** power)
        return result

# Примеры использования
p = Polynomial([1, 0, 2])  # Создает полином 1 + 0x + 2x^2
print(p(2))  # Вывод: 9 (1 + 0*2 + 2*2^2)
print(p(3))  # Вывод: 19 (1 + 0*3 + 2*3^2)
Ставь 👍 и забирай 📚 Базу знаний

🤔 Какие области в профессиональной деятельности у тебя развиты слабо Мои слабые области в профессиональной деятельности могут включать редкие и узкоспециализированные задачи, такие как низкоуровневое программирование или некоторые доменные знания в специфических отраслях. Также, возможно, у меня нет опыта работы с нестандартными или редкими инструментами и фреймворками, популярными только в отдельных кругах. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Помощь в трудоустройстве в IT-сфере! В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специал
+9
Помощь в трудоустройстве в IT-сфере! В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специалистов. Теперь любой желающий может попробовать себя в IT с полного нуля и начать обучение бесплатно! Узнайте про дальнейшее трудоустройство в ведущие IT-компании для восполнения кадрового дефицита. Для этого нужно: - Перейти по ссылке - Заполнить анкету и ответить на вопросы (занимает менее 3 минут) - На основании ваших ответов вы сразу узнаете, подходит ли вам сфера IT и сможете ли вы в ней работать Перейти на сайт #реклама 16+ urban-university.ru О рекламодателе

🤔 Методы eq, ne, lt, le, qt, qe? Также относятся к "магическим методам" и используются для перегрузки операторов сравнения. Эти методы позволяют вам определить, как объекты вашего класса будут сравниваться друг с другом с использованием операторов равенства, неравенства, меньше, меньше или равно, больше и больше или равно. 🟠Метод `eq` Отвечает за оператор равенства ==. Он позволяет определить, когда два объекта вашего класса считаются равными.
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def __eq__(self, other):
        return self.name == other.name and self.age == other.age

p1 = Person("Alice", 30)
p2 = Person("Alice", 30)
p3 = Person("Bob", 25)

print(p1 == p2)  # Вывод: True
print(p1 == p3)  # Вывод: False
🟠Метод `ne` Отвечает за оператор неравенства !=. Он позволяет определить, когда два объекта вашего класса считаются неравными.
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def __ne__ (self, other):
        return self.name != other.name or self.age != other.age

p1 = Person("Alice", 30)
p2 = Person("Alice", 30)
p3 = Person("Bob", 25)

print(p1 != p2)  # Вывод: False
print(p1 != p3)  # Вывод: True
🟠Метод `lt` Отвечает за оператор меньше <. Он позволяет определить, когда один объект вашего класса считается меньше другого.
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def __lt__(self, other):
        return self.age < other.age

p1 = Person("Alice", 30)
p2 = Person("Bob", 25)

print(p1 < p2)  # Вывод: False
print(p2 < p1)  # Вывод: True
🟠Метод `le` Отвечает за оператор меньше или равно <=. Он позволяет определить, когда один объект вашего класса считается меньше или равен другому.
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def __le__(self, other):
        return self.age <= other.age

p1 = Person("Alice", 30)
p2 = Person("Bob", 30)
p3 = Person("Charlie", 25)

print(p1 <= p2)  # Вывод: True
print(p1 <= p3)  # Вывод: False
🟠Метод `gt` Отвечает за оператор больше >. Он позволяет определить, когда один объект вашего класса считается больше другого.
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def __gt__(self, other):
        return self.age > other.age

p1 = Person("Alice", 30)
p2 = Person("Bob", 25)

print(p1 > p2)  # Вывод: True
print(p2 > p1)  # Вывод: False
🟠Метод `ge` Отвечает за оператор больше или равно >=. Он позволяет определить, когда один объект вашего класса считается больше или равен другому.
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def __ge__(self, other):
        return self.age >= other.age

p1 = Person("Alice", 30)
p2 = Person("Bob", 30)
p3 = Person("Charlie", 25)

print(p1 >= p2)  # Вывод: True
print(p1 >= p3)  # Вывод: True
print(p3 >= p1)  # Вывод: False
Ставь 👍 и забирай 📚 Базу знаний

🤔 Python — компилируемый или интерпретируемый Python считается интерпретируемым языком, так как код выполняется интерпретатором построчно, что облегчает отладку и делает его портативным. Тем не менее, перед исполнением Python-код компилируется в байт-код (.pyc), который затем выполняется на виртуальной машине (PVM). Поэтому Python можно назвать интерпретируемым с этапом предварительной компиляции в байт-код. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Метод bool? Используется для определения логической истинности (truthiness) объекта. Когда вызывается функция bool() на объекте или объект используется в контексте, где требуется логическое значение (например, в условиях if), вызывается метод __bool__. Если метод __bool__ не определен, Python использует метод __len__: объект считается ложным (False), если его длина равна нулю, и истинным (True) в противном случае. 🚩Зачем нужен Метод __bool__ позволяет вам определять, что будет считаться истинным или ложным для объектов вашего класса. Это может быть полезно в различных ситуациях, например, для проверки пустых контейнеров, валидных состояний объектов и т.д. 🚩Как использовать Для того чтобы использовать метод __bool__, нужно его определить в своем классе. Метод должен возвращать либо True, либо False. В этом примере метод __bool__ проверяет значение атрибута value. Если value имеет значение, которое считается ложным (например, 0 или None), метод возвращает False. В противном случае, он возвращает True.
class MyClass:
    def __init__(self, value):
        self.value = value
    
    def __bool__(self):
        return bool(self.value)

# Примеры использования
obj1 = MyClass(0)
obj2 = MyClass(10)

print(bool(obj1))  # Вывод: False
print(bool(obj2))  # Вывод: True

if obj1:
    print("obj1 is True")
else:
    print("obj1 is False")  # Этот блок выполнится

if obj2:
    print("obj2 is True")  # Этот блок выполнится
else:
    print("obj2 is False")
🚩Пример более сложного использования Допустим, у вас есть класс Box, который содержит предметы, и вы хотите, чтобы пустая коробка считалась ложной, а коробка с предметами — истинной.
class Box:
    def __init__(self, items):
        self.items = items
    
    def __bool__(self):
        return bool(self.items)

# Примеры использования
empty_box = Box([])
full_box = Box(['item1', 'item2'])

print(bool(empty_box))  # Вывод: False
print(bool(full_box))   # Вывод: True

if empty_box:
    print("The box is not empty")
else:
    print("The box is empty")  # Этот блок выполнится

if full_box:
    print("The box is not empty")  # Этот блок выполнится
else:
    print("The box is empty")
Ставь 👍 и забирай 📚 Базу знаний

🤔 Мультипроцессинг — что это Мультипроцессинг — это подход, при котором для выполнения задач создаются отдельные процессы, а не потоки. В Python это полезно для обхода ограничения GIL (Global Interpreter Lock), позволяя исполнять код параллельно на нескольких ядрах процессора. Модуль multiprocessing позволяет создавать независимые процессы, каждый из которых выполняет свою копию интерпретатора Python. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Методы add, mul, sub, truediv? Относятся к так называемым "магическим методам" или "специальным методам". Они позволяют определять поведение объектов при использовании операторов сложения (+), умножения (*), вычитания (-) и деления (/). 🟠Метод `__add__` Этот метод отвечает за операцию сложения. Если вы определяете этот метод в вашем классе, вы можете контролировать, что происходит, когда вы используете оператор + между объектами этого класса.
class Vector:
    def __init__(self, x, y):
        self.x = x
        self.y = y
    
    def __add__(self, other):
        return Vector(self.x + other.x, self.y + other.y)
    
    def __repr__(self):
        return f"Vector({self.x}, {self.y})"

v1 = Vector(1, 2)
v2 = Vector(3, 4)
print(v1 + v2)  # Вывод: Vector(4, 6)
🟠Метод `__mul__` Этот метод отвечает за операцию умножения. Его можно использовать, чтобы определить, как объекты вашего класса будут вести себя при использовании оператора *.
class Vector:
    def __init__(self, x, y):
        self.x = x
        self.y = y
    
    def __mul__(self, scalar):
        return Vector(self.x * scalar, self.y * scalar)
    
    def __repr__(self):
        return f"Vector({self.x}, {self.y})"

v = Vector(1, 2)
print(v * 3)  # Вывод: Vector(3, 6)
🟠Метод `__sub__` Этот метод отвечает за операцию вычитания. Он позволяет вам определить поведение объектов при использовании оператора -.
class Vector:
    def __init__(self, x, y):
        self.x = x
        self.y = y
    
    def __sub__(self, other):
        return Vector(self.x - other.x, self.y - other.y)
    
    def __repr__(self):
        return f"Vector({self.x}, {self.y})"

v1 = Vector(5, 7)
v2 = Vector(2, 3)
print(v1 - v2)  # Вывод: Vector(3, 4)
🟠Метод `__truediv__` Этот метод отвечает за операцию деления. Он позволяет определить, как объекты вашего класса будут вести себя при использовании оператора /.
class Vector:
    def __init__(self, x, y):
        self.x = x
        self.y = y
    
    def __truediv__(self, scalar):
        return Vector(self.x / scalar, self.y / scalar)
    
    def __repr__(self):
        return f"Vector({self.x}, {self.y})"

v = Vector(8, 4)
print(v / 2)  # Вывод: Vector(4.0, 2.0)
Ставь 👍 и забирай 📚 Базу знаний

🤔 В чем разница сравнение через is и == Оператор == проверяет равенство значений, то есть проверяет, содержат ли переменные одинаковые данные. Оператор is проверяет, ссылаются ли переменные на один и тот же объект в памяти. Таким образом, is используется для проверки идентичности объекта, а == — для проверки равенства значений. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что такое mocking? Это техника в программировании, используемая для замены реальных объектов или компонентов системы временными объектами (моками) во время тестирования. Эти временные объекты имитируют поведение реальных объектов, позволяя изолировать и тестировать отдельные части кода без зависимости от других компонентов системы. 🚩Основные компоненты 🟠`Mock` и `MagicMock` Основные классы для создания мок-объектов. 🟠`patch` Декоратор или контекстный менеджер для замены объектов на моки во время выполнения теста. 🚩Примеры использования Простой пример с использованием Mock
from unittest.mock import Mock

# Создание мок-объекта
mock = Mock()

# Настройка мок-объекта
mock.some_method.return_value = "Mocked Result"

# Вызов метода и проверка результата
result = mock.some_method()
print(result)  # Вывод: Mocked Result
Использование patch для замены объектов
import unittest
from unittest.mock import patch

# Пример функции, которая вызывает внешний API
def fetch_data():
    import requests
    response = requests.get("http://example.com/api/data")
    return response.json()

# Тестирование функции с использованием patch
class TestFetchData(unittest.TestCase):
    @patch('requests.get')
    def test_fetch_data(self, mock_get):
        # Настройка мок-ответа
        mock_get.return_value.json.return_value = {"key": "value"}

        # Вызов тестируемой функции
        result = fetch_data()

        # Проверка результата
        self.assertEqual(result, {"key": "value"})
        mock_get.assert_called_once_with("http://example.com/api/data")

if __name__ == '__main__':
    unittest.main()
Использование MagicMock
from unittest.mock import MagicMock

# Создание объекта MagicMock
mock = MagicMock()

# Настройка возвращаемого значения для магического метода __str__
mock.__str__.return_value = "MagicMocked String"

print(str(mock))  # Вывод: MagicMocked String
Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое `__slots__`? `__slots__` — это специальный атрибут в Python, который позволяет ограничить количество атрибутов, добавляемых экземпляру класса, и уменьшить использование памяти. При его использовании Python не создает обычный словарь для хранения атрибутов, а вместо этого выделяет фиксированное место для указанных атрибутов. Это может повысить производительность и экономить память, особенно при создании большого числа объектов. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что такое unit test? Это метод тестирования, при котором проверяется работа отдельных модулей или компонентов кода, обычно на уровне функций или методов. Цель юнит-тестирования — убедиться, что каждая часть кода работает правильно независимо от других частей. 🚩Основные характеристики 🟠Малый охват Юнит-тесты охватывают небольшие участки кода, такие как отдельные функции или методы. 🟠Изолированность Тесты выполняются в изолированной среде, что позволяет выявлять проблемы именно в тестируемом модуле без влияния внешних зависимостей. 🟠Автоматизация Юнит-тесты легко автоматизировать, что позволяет быстро проверять изменения в коде. 🟠Регулярность выполнения Юнит-тесты должны выполняться регулярно, например, при каждом изменении кода, чтобы обеспечить его стабильность. 🚩Пример 1⃣Тестируемая функция
def add(a, b):
    return a + b
2⃣Написание юнит-теста
import unittest
from my_module import add  # Импортируем тестируемую функцию из модуля

class TestAddFunction(unittest.TestCase):
    def test_add_positive_numbers(self):
        self.assertEqual(add(2, 3), 5)

    def test_add_negative_numbers(self):
        self.assertEqual(add(-1, -1), -2)

    def test_add_zero(self):
        self.assertEqual(add(0, 0), 0)

if __name__ == '__main__':
    unittest.main()
3⃣Запуск юнит-тестов
python test_add.py
Ставь 👍 и забирай 📚 Базу знаний

RE Design Buro – уникальные интерьеры для IT-специалистов! Более 15 лет создаем уникальные проекты международного уровня, кот
+4
RE Design Buro – уникальные интерьеры для IT-специалистов! Более 15 лет создаем уникальные проекты международного уровня, которые не только отражают ваш стиль, но и удовлетворяют все ваши потребности. Что мы предлагаем? ⭐️ Полный дизайн-проект: от идеи до реализации – разработаем концепцию, подготовим детальные чертежи и подберем лучшие материалы. 💡 Оперативность и комфорт: начинаем работу ещё до получения ключей, чтобы вы могли въехать в новый дом как можно скорее! ❗️ Прозрачность и честность: фиксируем стоимость работ и сроки, предлагаем удобную поэтапную оплату. 🔥 Специальные условия для IT-специалистов. 👉 Выполненные работы 👉 Подписывайтесь на канал 👉 Бесплатная консультация дизайнера

🤔 Threading что это Threading (многопоточность) — это техника, позволяющая программе выполнять несколько операций одновременно с помощью потоков. Каждый поток представляет собой отдельный поток выполнения, который может работать параллельно с другими, что повышает производительность и эффективность, особенно в многозадачных приложениях. В многопоточном окружении важны синхронизация и управление потоками, чтобы избежать конфликтов и блокировок данных. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Подбираем работу, с которой не захочется уходить Самые талантливые и сильные менеджеры по продажам теряются на собеседовании
Подбираем работу, с которой не захочется уходить Самые талантливые и сильные менеджеры по продажам теряются на собеседовании и не получают работу мечты. Выходит, что сейлз может продать что угодно, кроме себя. Мы это меняем. Теперь продавать ваши навыки будет искусственный интеллект 🎓 Чем раньше вы подключитесь, тем больше бенефитов получите от сервиса. Рассказываем, как это работает, попробуйте сейчас: Попробовать #реклама О рекламодателе