Программистика
Закрытый канал
Лучший канал про python Ссылка для друга: https://t.me/+Ai6ughKtf5g2ZmFi Купить рекламу: https://telega.in/c/+Ai6ughKtf5g2ZmFi Админ: @JeyRahol По рекламе: @ReivuManager
Больше5 783
Подписчики
-424 часа
+107 дней
-4730 дней
Архив постов
5 783
Российский программист OpenAI Олег Миллер создал канал «Доктор GPT» о последних разработках в сфере ИИ.
❖ Инструменты для работы, творчества и развлечений
❖ Нейросети без ограничений и цензуры [18+]
❖ Проекты, которые изменят жизнь всего человечества
Подпишись, ничего интереснее про ИИ в Telegram просто нет: https://t.me/+iqnm1EACSaI4Yjcy
5 783
🔥 Логируй как профи: что не так с `print()` и как писать логи правильно
Логирование — это как чёрный ящик самолёта: пока всё работает, про него не думаешь. Но когда что-то ломается, без него — катастрофа.
И да,
print() — это не логирование, даже если вы очень его любите.
🧱 Почему не print()?
🟢 print() не умеет разделять уровни сообщений (ошибка или просто инфо) 🟢 Его нельзя легко перенаправить в файл или на удалённый сервер 🟢 В продакшене вы не сможете отследить проблему, если логи разбросаны по консоли📌 Базовое логирование
import logging
logging.basicConfig(level=logging.INFO)
logging.info("Приложение запущено")
📎 basicConfig быстро включит логирование, но на продакшене лучше задавать формат и место хранения.
🎯 Уровни логов
🟢 DEBUG — детальная отладка
🟢INFO — обычная информация
🟢 WARNING — что-то подозрительное
🟢ERROR — ошибка, но система ещё жива
🟢CRITICAL — всё очень плохо
📦 Логи в файл
logging.basicConfig(
filename='app.log',
level=logging.INFO,
format='%(asctime)s — %(levelname)s — %(message)s'
)
Теперь логи сохраняются в app.log с временем и уровнем.
🔄 Ротация логов
Чтобы файл логов не вырос до гигабайтов:
from logging.handlers import RotatingFileHandler
handler = RotatingFileHandler('app.log', maxBytes=2_000_000, backupCount=5)
logging.basicConfig(
handlers=[handler],
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s'
)
📎 При достижении 2MB файл заменяется, и хранится 5 последних копий.
🧪 Логируем ошибки с трассировкой
try:
1 / 0
except ZeroDivisionError:
logging.exception("Ошибка деления на ноль")
➡️logging.exception() автоматически добавляет traceback в лог.
💡 Запомни:
🟢 Не логируй пароли и токены 🟢 Разделяй уровни — не пиши error там, где warning 🟢 Настрой логи под продакшен заранее, а не когда уже горит🗣 Если хотите пост про цветные логи, логирование в JSON или интеграцию с Sentry — пишите темы, мы с радостью сделаем! 🚀 Программистика || #Статья
5 783
👩💻 Простой Python: курс для начинающих
Курс состоит из обучающих видеороликов и множества практических задач. Материал излагается доступным языком, подробно и на примерах. Задачи помогут закрепить знания и выработать навык написания программ.
Пройдя курс, вы освоите синтаксис языка программирования Python и овладеете такими важнейшими конструкциями, как ветвление и цикл. Узнаете, чем список отличается от кортежа, как написать собственную функцию и получить данные из текстового файла.
🌐 СсылкаПрограммистика || #Course
5 783
Канал, где ты точно найдёшь работу в сфере ИБ!
Тут уже более тысячи вакансий от самых именитых компаний из РФ и не только. А большинство иностранных компаний ещё и могут помочь с переездом. Так ещё предлагают очень высокие зарплаты.
ИБ Вакансии: найти достойную работу проще, чем кажется!
5 783
👀Kubernetes для разработчиков
В издании рассматриваются все составляющие процесса контейнеризации и развертывания приложения на платформе Kubernetes с точки зрения разработчика. Сначала вы создадите небольшое приложение, способное работать в облачном кластере Kubernetes, а затем поэтапно изучите рекомендуемые практики, позволяющие сделать развертывание стабильным в долгосрочной перспективе, включая методы масштабирования, планирования емкости и оптимизации ресурсов. Из книги вы узнаете, как приложение, написанное на Python, Java, Ruby или любом другом языке, можно запросто развернуть на профессиональной облачной платформе, которая может удовлетворить ваши требования и сейчас, и в дальнейшем, — с использованием контейнеров и Kubernetes. Если у вас еще нет готового к развертыванию собственного приложения, то в качестве примера можете использовать мое демонстрационное приложение. Кроме того, для работы с книгой необязательно иметь предварительные знания о платформах Docker или Kubernetes. Прочитав ее, вы сможете развертывать в Kubernetes различные виды рабочих нагрузок: от stateless-приложений до пакетных заданий и баз данных.Программистика|| #doc
5 783
👩💻 Бесплатный Онлайн-Курс Профессия Python-разработчик+GIT с Нуля!
Автор курса Руслан Сенаторов t.me/RuslanSenatorov, Преподаватель и Президент IT-организации(CEO) github.com/SENATOROVAI | Материалы курса основаны на открытых лекциях. Бесплатный онлайн курс Python ДЛЯ ДЕТЕЙ на Stepik — полное обучение Python с нуля. Освой программирование на Python, стань Python-разработчиком. С этими знаниями сможешь изучить машинное обучение с нуля, получить навыки ML engineer и работать с Git. Всё в одном: Python + обзор Data Science (ML) + Git обучение для начинающих.
🌐 СсылкаПрограммистика || #Course
5 783
👩💻 Всем программистам посвящается!
Вот 17 авторских обучающих IT каналов по самым востребованным областям программирования:
Выбирай своё направление:
👩💻 Python — t.me/python_ready
🤔 InfoSec & Хакинг — t.me/hacking_ready
🖥 SQL & Базы Данных — t.me/sql_ready
🤖 Нейросети — t.me/neuro_ready
👩💻 C/C++ — https://t.me/cpp_ready
👩💻 C# & Unity — t.me/csharp_ready
👩💻 Linux — t.me/linux_ready
📖 IT Книги — t.me/books_ready
👩💻 Frontend — t.me/frontend_ready
📱 JavaScript — t.me/javascript_ready
👩💻 Backend — t.me/backend_ready
📱 GitHub & Git — t.me/github_ready
👩💻 Java — t.me/java_ready
👩💻 Весь IT — t.me/it_ready
👩💻 Bash & Shell — t.me/bash_ready
🖼️ DevOps — t.me/devops_ready
🖥 Design — t.me/design_ready
📌 Гайды, шпаргалки, задачи, ресурсы и фишки для каждого языка программирования!
5 783
👀Машинное обучение с использованием Python. Сборник рецептов: практические решения от предобработки до глубокого обучения, 2 изд
Книга содержит около 200 задач машинного обучения, таких как загрузка и обработка текстовых или числовых данных, отбор модели и многие другие. Рассмотрена работа с языком Python, библиотеками pandas и scikit-learn. Коды примеров можно вставлять, объединять и адаптировать, создавая собственное приложение. Приведены рецепты решений с использованием: векторов, матриц и массивов; данных из CSV, JSON, SQL, баз данных, облачных хранилищ и других источников; обработки данных, текста, изображений, дат и времени; умень-шения размерности и методов выделения или отбора признаков; оценивания и отбора моделей; линейной и логистической регрессии, деревьев, лесов и k ближайших соседей; опорно-векторных машин (SVM), наивных байесовых классификаторов, кластеризации и нейронных сетей; сохранения и загрузки натренированных моделей.Программистика|| #doc
5 783
🖥 Guillotina — Представь: у тебя куча JSON'ов, которые уже давно просят казни, а твой старый бэкенд только грустно вздыхает под нагрузкой. Тут появляется Guillotina — и бах — данные летят в облака с скоростью гильотины!
🐱 Ссылка на GitHub
Программистика|| #Репозиторий
5 783
Миллионер-айтишник в 24 года?
Знакомьтесь — это Влад, ему 24, и он программист без высшего образования..
IT и программирование — это ниша, которая никогда не умрет и в которой нет потолка !
~ Думаешь это сложно?
Я и тебя научу зарабатывать в IT и растить себя как высококлассного специалиста мирового уровня!
Не веришь? Забирай бесплатные материалы в моем канале 👇
https://t.me/+TYCMZqyelCg3MWUy
5 783
👀 Анализ поведенческих данных на R и Python
Задействуйте всю мощь поведенческих данных в своей компании, используя инструменты, специально разработанные для их анализа. Общепринятые алгоритмы науки о данных и инструменты предсказательной аналитики трактуют данные о поведении клиентов, такие как клики на веб-сайте или покупки в супермаркете, аналогично любым другим данным. Однако в этой книге представлены мощные методы, специально приспособленные для анализа поведенческих данных. Усовершенствованный экспериментальный дизайн позволяет вам получать максимальную отдачу от ваших A/B-тестов, тогда как причинно-следственные диаграммы позволяют выявлять причины поведений, даже если вы не можете проводить эксперименты. Книга написана в доступном стиле для исследователей данных, бизнес-аналитиков и бихевиористов. Приведены полные примеры и упражнения на ЯП R и Python, которые помогут вам получать более глубокую информацию о ваших данных — и не откладывая в долгий ящик.Программистика|| #doc
5 783
Ты ничего не слышишь и ничего не видишь, но при желании твои данные доступны всем.
secure sector - канал энтузиастов из сферы кибер-безопасности, которые резко против такого расклада событий. Они расскажут, почему тонны твоего интернет следа не сыграют тебе на руку в будущем, а также как защитить себя и близких тебе людей от угроз из глубин интернета.
Если не ты - то кто?
5 783
🖥 ScrapeServ — это API, который принимает URL и возвращает файл с данными веб-сайта и его скриншотами!
Он разработан для запуска в Docker-контейнере и использует браузерные технологии для обработки JavaScript на страницах. Среди возможностей ScrapeServ — прокрутка страницы с созданием скриншотов различных разделов, автоматическая обработка перенаправлений и корректная работа с ссылками на загрузку файлов. Задачи обрабатываются в очереди с настраиваемым распределением памяти, обеспечивая эффективное использование ресурсов.🐱 Ссылка на GitHub Программистика|| #Репозиторий
5 783
Вам нравится читать контент на этом канале?
Возможно, вы задумывались о том, чтобы купить на нем интеграцию?
Следуйте 3 простым шагам, чтобы сделать это:
1) Нажмите на ссылку: Вход
2) Пополняйтесь удобным способом
3) Размещайте публикацию
Если тематика вашего поста подойдет нашему каналу, мы с удовольствием опубликуем его.
5 783
✅ Логируй как профи: что не так с print() и как писать логи правильно
Логирование — это не принт.
🧠 Даже опытные иногда делают
print("here") вместо нормального лога.
А потом жалуются, что не могут отловить баг в проде.
Разберём, как делать грамотный лог — от простого до кастомных хендлеров.
🧱 Базовая настройка логов
import logging
logging.basicConfig(level=logging.INFO)
logging.info("Приложение запущено")
➡️ basicConfig — быстрый старт, но на проде лучше не использовать без настройки формата и ротации.
📎 Форматирование и уровни
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s [%(levelname)s] %(message)s'
)
🟢 Уровни логов:
🟢 DEBUG — для отладки 🟢 INFO — обычные события 🟢 WARNING — что-то не так, но программа работает 🟢 ERROR — ошибка, но система не упала 🟢 CRITICAL — всё очень плохо💥 Почему не
print()?
print("User created") # Не видно в логах, не управляется
logging.info("User created") # Можно записать в файл, фильтровать, форматировать
➡️ print в проде — это как кидать бумажки в окно и надеяться, что их кто-то увидит.
📦 Запись логов в файл
logging.basicConfig(
filename='app.log',
level=logging.INFO,
format='%(asctime)s — %(levelname)s — %(message)s'
)
➡️ Теперь все логи сохраняются в файл app.log.
🔄 Ротация логов
Когда файл app.log разрастается до гигабайтов, нужна ротация:
from logging.handlers import RotatingFileHandler
handler = RotatingFileHandler('app.log', maxBytes=2000000, backupCount=5)
logging.basicConfig(
handlers=[handler],
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s'
)
➡️ Лог будет сбрасываться после 2MB, хранится 5 архивов — не забьёт диск.
🎯 Практика: логируем ошибки
try:
1 / 0
except ZeroDivisionError as e:
logging.exception("Произошло деление на ноль")
➡️ logging.exception() пишет traceback — удобно для отладки.
🧪 Кастомный логгер для проекта
logger = logging.getLogger("myproject")
logger.setLevel(logging.DEBUG)
➡️ Можно создать разные логгеры для разных модулей, задавать свои хендлеры, уровни и фильтры.
💡 Запомни:
🟢 Никогда не логируй пароли, токены и чувствительные данные 🟢 Используй logger.exception() внутри except 🟢 Разделяй уровни: не пиши error там, где warningПрограммистика|| #python #logging #ошибки #прод #практика #длявсех
