Python Backend | YeaHub
1.09K subscribers
139 photos
35 videos
6 files
213 links
Теория, подготовка к интервью и курсы для Python разработчиков

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

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

Для связи: @ruslan_kuyanets
Download Telegram
#полезное
👍 Скрытые фишки Python, которые должен знать каждый

Не всё в Python лежит на поверхности. Вот подборка приёмов, которые редко объясняют новичкам, но они делают код чище, короче и умнее

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🛞 Новинка в Python

PEP 750 вводят t-строки — это как f"..." но:

- интерполяция ограничена и контролируема;
- поддерживается строгое соответствие шаблону;
- можно передавать переменные явно, предотвращая SQL-инъекции и XSS.

Для чего? Для того, чтобы писать shell-команды, SQL, HTML и т.д. без риска инъекций и без ручного экранирования

Пример:

from string.templatelib import Template

name = "World"
template: Template = t"Hello, {name}!"

safe_output = html(template)


Здесь html() — это функция, которая принимает объект Template и возвращает безопасную строку, экранируя потенциально опасные вставки

PEP 787 предлагает добавить это прямо в subprocess и shlex (но пока в статусе "отложен")

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#книги
🤯 Selenium Python

Автор: Павел Хошев
Год издания: 2022
Скачать книгу

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤯 Создаем карту с поиском локации на Python

Хочешь ввести название города и сразу увидеть его на карте прямо в Jupyter Notebook?

Вот простой скрипт, который делает именно это

Используем библиотеки geopy и folium для геокодинга и отображения карты

Вводишь, например, "Tokyo" — и получаешь интерактивную карту с маркером прямо в блокноте

Удобно для гео-проектов, визуализаций

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #kubernetes
🤔 Каковы лучшие практики развертывания приложений в Kubernetes?

Чтобы правильно развернуть приложение в Kubernetes, следует:
- Использовать декларативный подход (Deployment, Helm).
- Разделять сервисы по разным namespace.
- Настраивать liveness и readiness probe для мониторинга состояния Pod-ов.
- Определять resource limits и requests для оптимального распределения
ресурсов.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🫠 Преврати любую ML-статью в репозиторий с кодом

Paper2Code — это система на базе LLM-агентов, которая превращает научную работу в полноценный кодовый репозиторий

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

Ссылка на руководство тут

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Редкие кадры дикой природы: сишник наблюдает за тем, как питонист пишет код

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
👍 Validators — это библиотека Python, предназначенная для простого и эффективного валидирования данных!

В отличие от других инструментов, требующих определения схем или форм, Validators позволяет проверять отдельные значения без необходимости в сложной настройке. Она предоставляет функции для проверки различных типов данных, включая электронные почты, URL, IP-адреса, доменные имена и другие.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #kubernetes
🤔 Каковы лучшие практики безопасности Kubernetes-кластера?

Для обеспечения безопасности в Kubernetes следует:
- Ограничить доступ с помощью RBAC.
- Использовать NetworkPolicy для контроля сетевого трафика.
- Защитить API-сервер и внутренние компоненты от несанкционированного
доступа.
- Настроить безопасное соединение между узлами.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
👨‍💻 Туториал от Real Python — пошагово показывают, как сделать сервис для сокращения ссылок на FastAPI + SQLite

Что разберёшь:

🟠 Создание REST API
🟠 Работа с SQLite через SQLModel
🟠 CRUD-операции
🟠 Документация через Swagger (встроено в FastAPI)

Отлично подходит, если хочешь прокачаться в веб-разработке на Python
Туториал тык

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЛитКод
Задача: 565. Array Nesting

Дан массив целых чисел nums длиной n, где nums является перестановкой чисел в диапазоне [0, n - 1].

Вы должны построить множество s[k] = {nums[k], nums[nums[k]], nums[nums[nums[k]]], ...} при соблюдении следующего правила:

Первый элемент в s[k] начинается с выбора элемента nums[k] с индексом k.
Следующий элемент в s[k] должен быть nums[nums[k]], затем nums[nums[nums[k]]], и так далее.
Мы прекращаем добавлять элементы непосредственно перед тем, как в s[k] появится дубликат.

Верните длину самого длинного множества s[k].

Пример:
Input: nums = [5,4,0,3,1,6,2]
Output: 4
Explanation:
nums[0] = 5, nums[1] = 4, nums[2] = 0, nums[3] = 3, nums[4] = 1, nums[5] = 6, nums[6] = 2.
One of the longest sets s[k]:
s[0] = {nums[0], nums[5], nums[6], nums[2]} = {5, 6, 2, 0}


👨‍💻 Алгоритм:

1⃣Создайте массив для отслеживания посещенных элементов.

2⃣Для каждого элемента в nums, если он не посещен, начните формирование множества s[k], последовательно переходя по элементам, пока не встретится уже посещенный элемент.

3⃣Обновите максимальную длину найденного множества.

😎 Решение:
class Solution:
def arrayNesting(self, nums: List[int]) -> int:
visited = [False] * len(nums)
max_length = 0

for i in range(len(nums)):
if not visited[i]:
start = i
count = 0
while not visited[start]:
visited[start] = True
start = nums[start]
count += 1
max_length = max(max_length, count)

return max_length


👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😬 Находка для хакеров

Sherlock — это open-source инструмент на Python, который помогает находить имена пользователей на множестве соцсетей и сайтов

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

python3 sherlock username


Пример:

python3 sherlock johndoe


Инструмент проверит наличие johndoe более чем на 300 сайтах — включая Facebook, Twitter, Instagram, GitHub, Reddit и другие

> Несколько ников сразу:
python3 sherlock user1 user2 user3


> Сохраняй как удобно:
--output, --csv, --json


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

Deployment - это объект Kubernetes, который управляет созданием, обновлением и масштабированием Pod-ов. Он позволяет автоматизировать развертывание приложений, обеспечивать отказоустойчивость и откатывать неудачные обновления.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
#полезное
🛞 Компьютер прямо в браузере

Да, сервис Puter — это открытая операционная система, работающая прямо в браузере.

Полноценный десктоп, терминал, файлы, приложения — всё, не выходя из вкладки

Это не эмулятор, а полноценный интернет-ОС с открытым кодом

Идеально для быстрого прототипирования, запуска скриптов без установки среды

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
😊 LLM — это один из типов ИИ-моделей, но не все модели ИИ являются LLM

Вот восемь передовых архитектур, которые выходят за рамки классических ИИ-моделей — усиливая понимание, рассуждение и генерацию в разных областях и типах данных

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM