Python Backend | YeaHub – Telegram
Python Backend | YeaHub
1.82K subscribers
258 photos
63 videos
7 files
414 links
Теория, подготовка к интервью и курсы для Python разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
🖥 Middle Python Developer в компанию Yappy

Техническое собеседование. Лето 2024. Опыт в резюме: 4 года. Проект: вертикальные видео. Вопросы затрагивали реальные кейсы из высоконагруженного проекта.

Вопросы:
- В чём разница между git rebase и git merge?
- Что такое команда git cherry-pick?
- Использование Poetry для управления зависимостями
- Как спроектировать систему учёта просмотров видео?

Все вопросы можно посмотреть на нашей платформе

#собес #коллекции
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#полезное
😘 Библиотека для реалистичной симуляции движений мыши в Python

OxyMouse позволяет эмулировать движения мыши так, чтобы они выглядели максимально естественно и приближённо к человеческим.

Это особенно полезно в сценариях, где важно имитировать поведение реального пользователя, например, в автоматизации тестирования или веб-скрейпинге.

На примерах показаны алгоритмы траекторий движения курсора.

Установка: pip install oxymouse

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Please open Telegram to view this post
VIEW IN TELEGRAM
3
#Собес #git
🤔 Какие различные стратегии ветвления вы знаете?

💬 Кратко:
Централизованный рабочий процесс (Centralized Workflow). Веткой разработки по умолчанию является main, и все изменения фиксируются в этой ветке. Этот рабочий процесс не требует других веток, кроме главной.

Рабочий процесс разветвления функций (Feature Branching Workflow). Основная идея рабочего процесса разветвления функций заключается в том, что разработка всех функций должна вестись в специальной ветке, а не в основной.

Рабочий процесс Gitflow. Gitflow определяет строгую модель ветвления, разработанную вокруг релиза проекта. Это обеспечивает надежную основу для управления большими проектами. Она назначает очень специфические роли различным веткам и определяет, как и когда они должны взаимодействовать. В дополнение к функциональным веткам используются отдельные ветки для подготовки, поддержки и записи релизов.

Рабочий процесс Forking. Forking Workflow принципиально отличается от других популярных рабочих процессов Git. Вместо того чтобы использовать единый серверный репозиторий в качестве "центральной" кодовой базы, он предоставляет каждому разработчику свой серверный репозиторий. Это означает, что каждый участник имеет не один, а два Git-репозитория: частный локальный и публичный серверный. Чаще всего Forking Workflow встречается в публичных проектах с открытым исходным кодом.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😐 Гайд для Python-разработчиков

Как определить точное местоположение любого IP-адреса

В статье показывают, как с помощью Python и библиотеки pygeoip работать с базой MaxMind, чтобы быстро получать геолокацию IP. Скрипт можно настроить так, чтобы все необходимые зависимости устанавливались автоматически, а сам процесс был максимально простым и удобным

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21
#Собес #git
🤔 Что делает файл .gitignore?

💬 Кратко:
Файл .gitignore определяет файлы и папки, которые Git должен игнорировать. Это используется для исключения временных файлов, логов, зависимостей, сгенерированных файлов и других ненужных элементов.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#полезное
👨‍💻 Python-лайфхак:

Используйте itertools.accumulate, чтобы получить итератор с накопленными суммами.

Можно передать другую бинарную функцию в качестве аргумента, тогда будут возвращаться накопленные результаты этой функции.

Пример:

import itertools

daily_revenues = [100, 120, 90, 110, 80]

# Получаем накопленную выручку
total_revenue_to_date = list(itertools.accumulate(daily_revenues))

print(total_revenue_to_date)
# Вывод: [100, 220, 310, 420, 500]


👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#Собес #git
🤔 Что такое ветка в репозитории Git?

💬 Кратко:
Ветка - это независимая линия разработки в Git. Она позволяет работать над новой функциональностью или исправлениями, не затрагивая основную версию проекта. После завершения работы изменения из ветки можно объединить с основной веткой.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#полезное
😵 ClatScope — это мощный инструмент для проведения разведки с использованием открытых источников (OSINT), разработанный для сбора разнообразной информации об IP-адресах, доменах, электронных почтах, номерах телефонов и многом другом!
Github

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
🖥 Python Backend Developer в компанию KeepRise

HR-скриннинг. Лето 2024. Зарплатная вилка: 350к. Опыт в резюме: 6+ лет. Проект: система ценообразования. Глубокие технические моменты не затрагивались.

Вопросы:
- Как работает балансировщик нагрузки?
- Зачем нужны юнит-тесты?
- Как проектировать data pipeline для надёжности и масштабируемости?
- Что такое "хорошая архитектура"?

Все вопросы можно посмотреть на нашей платформе

#собес #коллекции
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#Собес #python
🤔 Что такое _slots_

💬 Кратко:
__slots__ — это специальный атрибут класса, который ограничивает набор атрибутов, которые можно присваивать экземплярам этого класса. Он помогает экономить память, исключая создание словаря для хранения атрибутов объектов.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
2
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
😊 Пакет GeoAI для Python становится ещё умнее, скоро он будет поддерживать AI-агентов

Это значит, что вы сможете с помощью естественного языка легко загружать, анализировать и визуализировать геопространственные данные без единой строки кода

Следите за обновлениями, релиз уже скоро

GitHub: https://github.com/opengeos/geoai

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from YeaHub
😎 Реальные собеседования + тренажёр = комплексная подготовка

На нашей платформе мы собираем собеседования вместе с сообществом: Guru, участниками, менторами и партнёрами.

Один из наших партнёров — Аня и её проект «Авось Прорвёмся», экосистема чатов для кандидатов, которые ищут работу и готовятся к собеседованиям.

Прорвёмся вместе — анонимный канал для самостоятельной подготовки:
- 1000+ записей реальных собеседований с разбором задач и вопросов;
- контакты рекрутеров;
- гайды по резюме, трудоустройству и стратегиям поиска работы.
- задачи и вопросы с собеседований

📚 Сначала смотри записи реальных собеседований, а потом изучай эти же вопросы в нашем тренажёре.
Мы цифровизуем все собесы из чатов «Авось Прорвёмся» и добавляем их в текстовом виде в коллекцию. Так можно не только услышать, как это проходит вживую, но и отработать те же самые вопросы уже в интерактивном формате.

📌 Направления, которые доступны в чатах:
iOS, Android, Frontend, Python, Go, Java, C#, QA, Analytics.

Подключение — только по инвайту от действующего участника, или YeaHub.


👉 Обучайтесь, общайтесь, растите вместе с YeaHub и Авось Прорвемся
1👍1🔥1
#полезное
🏕 Памятка по f-строкам в Python

f-строки это один из самых простых и быстрых приёмов для оформления текстов в Python.

Расширенный вариант здесь

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #python
🤔 Чем отличаются декораторы classmethod и staticmethod?

💬 Кратко:
classmethod получает в качестве первого аргумента сам класс (по умолчанию cls ), а не экземпляр. Он используется для методов, которые работают с классом, а не с объектами.
staticmethod не получает ни класс, ни экземпляр в качестве первого аргумента и работает как обычная функция, которая логически связана с классом.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤯 Python-библиотека для визуализации архитектуры

Есть удобная Python-библиотека Diagrams, которая позволяет быстро строить архитектурные схемы и диаграммы прямо из кода.

Инструмент отлично подходит для демонстрации идей продукта заказчикам и партнёрам, можно визуализировать облачные сервисы, инфраструктуру или внутренние компоненты системы.

Пример использования:

pip install diagrams


from diagrams import Cluster, Diagram
from diagrams.aws.compute import ECS
from diagrams.aws.database import ElastiCache, RDS
from diagrams.aws.network import ELB, Route53

with Diagram("Clustered Web Services", show=False):
dns = Route53("dns")
lb = ELB("lb")

with Cluster("Services"):
svc_group = [ECS("web1"),
ECS("web2"),
ECS("web3")]

with Cluster("DB Cluster"):
db_primary = RDS("userdb")
db_primary - [RDS("userdb ro")]

memcached = ElastiCache("memcached")

dns >> lb >> svc_group
svc_group >> db_primary
svc_group >> memcached


Первое изображение можно получить с помощью этого кода, а дальше всё ограничивается только вашей фантазией.

🔵Документация и примеры
🔵GitHub

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
This media is not supported in your browser
VIEW IN TELEGRAM
Когда попросил гпт помочь в проблеме, но он добавил ещё одну проблему:

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
🫡6
#полезное
❤️‍🔥 4 способа скопировать список в Python

В Python есть несколько способов сделать копию списка. Но важно понимать разницу между shallow copy (поверхностная копия) и deep copy (полная копия).

original = [1, 2, [3, 4]]

# 1. Срез (shallow copy)
copy1 = original[:]

# 2. Метод .copy() (shallow copy)
copy2 = original.copy()

# 3. Через list() (shallow copy)
copy3 = list(original)

# 4. deepcopy (deep copy)
import copy
copy4 = copy.deepcopy(original)


Теперь проверим разницу между поверхностной и полной копией:

original[2].append(5)
print(copy1)
# [1, 2, [3, 4, 5]] — вложенный список изменился!
print(copy4)
# [1, 2, [3, 4]] — без изменений


👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #python
🤔 Разница между одинарным и двойным подчеркиванием?

💬 Кратко:
🟠Одинарное подчеркивание (_) используется как соглашение для обозначения "непубличных" атрибутов и методов, которые не предназначены для использования вне класса, но это не является жестким ограничением.
🟠Двойное подчеркивание ( _ ) используется для реализации механизма именования с учётом "защищённых" атрибутов, а также для создания уникальных имен, чтобы избежать конфликтов.

📌 Полный разбор + примеры использования — на платформе:
👉
Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2