About Python [ru]
6.36K subscribers
315 photos
1 video
1.66K links
Все о Python: алгоритмы, паттерны проектирования, задачи, нейронные сети

Канал на бирже - https://telega.in/c/python_tesst

По вопросам рекламы или разработки: @g_abashkin
Download Telegram
🧠 Сложность задачи = (техническая сложность) × (неясность цели)

Ты думаешь, что задача тяжёлая. Но, возможно, ты просто не до конца понял, что именно нужно сделать.

👉 Совет: перед стартом задай себе вопрос: «Что должно быть в итоге, в чём успех?» Если нет чёткого критерия, сложность будет только расти. Уточнение цели снижает объём неопределённости в разы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Введение в ERP: Что такое ERP-системы и почему они важны для производства?

В статье рассматриваются ERP-системы: их роль в управлении бизнесом, ключевые преимущества внедрения, а также этапы выбора, проектирования и настройки, чтобы сделать систему максимально эффективной.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Фильтрация списка словарей

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

Пример:

data = [
{"name": "Alice", "age": 25},
{"name": "Bob", "age": 30},
{"name": "Charlie", "age": 20},
{"name": "Diana", "age": 35}
]

result = filter_by_key(data, "age", 25)
print(result)
# Ожидаемый результат:
# [
# {"name": "Bob", "age": 30},
# {"name": "Diana", "age": 35}
# ]


Решение задачи🔽

def filter_by_key(data, key, threshold):
return [item for item in data if item.get(key, 0) > threshold]

# Пример использования:
data = [
{"name": "Alice", "age": 25},
{"name": "Bob", "age": 30},
{"name": "Charlie", "age": 20},
{"name": "Diana", "age": 35}
]

result = filter_by_key(data, "age", 25)
print(result)
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👩‍💻 Создание блога на FastAPI с нуля: JWT, Markdown и современный веб-дизайн

В этой статье мы создадим полноценный мини-блог на FastAPI с нуля, используя современные технологии веб-разработки. Вы узнаете, как реализовать JWT-аутентификацию, работать с Markdown и создать привлекательный пользовательский интерфейс.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Как написать Raft на чистом Python: основы

Статья объясняет основы реализации алгоритма Raft на Python. Рассматриваются механизмы выбора лидера, репликации данных и обеспечения согласованности для стабильной работы распределённых систем.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
➡️ Оптимизация ядра WebGPU для перемножения матриц и достижения производительности свыше 1ТФЛОПС

Статья рассказывает о создании Surfgrad — высокопроизводительной библиотеки для автоматического дифференцирования выражений с использованием WebGPU. Описываются тензорные операции и оптимизация под браузеры.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 no-code (hub.ultralytics.com) в связке с Yandex DataSphere

Статья рассматривает no-code и low-code платформы для обучения нейросетей. Особое внимание уделяется платформе Ultralytics Hub, её возможностям обучения Yolo-моделей и использованию ресурсов Yandex DataSphere.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Получение информации о системе с помощью Python

Статья показывает, как системные администраторы могут использовать Python для быстрого получения информации о системе. Рассматриваются примеры скриптов для мониторинга производительности и отчетности.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 IMPulse — наш взгляд на менеджмент инцидентов

Статья представляет open source решение для менеджмента инцидентов, альтернативу Alertmanager. Рассматриваются его преимущества и возможности для компаний, ограниченных санкциями или политикой безопасности.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🧭 Документация — это не wiki, а навигатор

Многие пишут документацию, как хранилище фактов. Но пользователю нужно не «знать всё», а быстро дойти до цели.

👉 Совет: строй документацию как сценарий: «Ты хочешь Х — делай 1, 2, 3». Дальше — ссылки на детали. Делай её пошаговой и прагматичной. Хорошая дока экономит человеку не время, а жизнь.
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Python-библиотеки, которые упрощают жизнь программиста. Часть 1

Здравствуйте! Я — Алексей Жиряков, техлид backend-команды KION. Делюсь подборкой Python-библиотек, которые мы используем для оптимизации работы. Надеюсь, они будут полезны и вам!

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
👩‍💻 Когда уверенность становится самонадеянностью: история одной фатальной ошибки

Привет! Я — Денис, студент Ярославского университета и сотрудник Тензора. В статье расскажу, как мы с командой разработали кликер-игру и столкнулись с ошибками, но получили ценный опыт.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Антипаттерны не щадят даже лучших.

С 13 по 17 октября пройдет новый сезон Podlodka Techlead Crew “Архитектурные антипаттерны”.

Обсудим ошибки, которые ломают архитектуру, и как их избежать.

В программе:

🛠️ Модульный монолит: убийца микросервисов.
Какие плюсы микросервисов реально доступны и без них и как монолит снижает сложность и экономит ресурс — Денис Цветцих

📑 Дизайн-доки — инженерная культура в FAANG. Как обсуждать архитектуру до кода, избегать холиваров и делать дизайн-доки полезными — Дмитрий Волыхин

Error Handling: от боли к порядку. Стандарты обработки ошибок вместо хаоса при интеграциях через API — Евгений Лукьянов

🔍 Круглый стол. Архитектурные антипаттерны: как вовремя распознать. Первые звоночки анти‑паттернов, практические примеры и стратегии их предотвращения — Алексей Кашин, Салих Фахрутдинов, Андрей Шарапов

🧠 Всё, что обсудим, реально применимо и пригодится уже в следующем спринте

Подробности и билеты: https://podlodka.io/techcrew
1
👩‍💻 Как и когда использовать Celery — мой опыт на проде

Рассказываю, как прикрутил Celery, чтобы фоновые запросы к AI-API не превращались в очередь в МФЦ. Плюсы, грабли и когда это вообще стоит делать.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Умная генерация коротких ссылок с контролем коллизий

Реализуйте функцию shorten_url(original_url, storage), которая генерирует короткий код (например, 5 символов) для длинной ссылки.

Функция должна гарантировать уникальность кода и использовать уже существующий storage (словарь вида {short_code: original_url}) для проверки коллизий.

Код должен быть:

• Состоящим из символов [a-zA-Z0-9]
• Фиксированной длины (по умолчанию 5)
• Уникальным: если сгенерированный код уже есть — нужно сгенерировать другой


Решение задачи🔽

import random
import string

def shorten_url(original_url, storage, code_length=5):
chars = string.ascii_letters + string.digits
attempt = 0
max_attempts = 1000

while attempt < max_attempts:
code = ''.join(random.choices(chars, k=code_length))
if code not in storage:
storage[code] = original_url
return code
attempt += 1

raise RuntimeError("Unable to generate unique code after many attempts")

# Пример использования
storage = {}
url = "
https://example.com/very/long/link"
code = shorten_url(url, storage)
print(code)
print(storage)
Please open Telegram to view this post
VIEW IN TELEGRAM