Как стать автором
Обновить
485.06

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Пишем простого бота-администратора для Telegram на Python. Тестируем на жене

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 1.1K
Python *API *
FAQ

Создание своего собственного телеграм-бота является одним из увлекательных и полезных способов практического применения программирования. Я решил создать своего бота как вариант добавления нового увлекательного проекта в свой портфолио, а также для создания комфорта и удобства для пользователей, которые используют телеграм в своей повседневной жизни.

После анализа нескольких библиотек для создания телеграм-ботов, я выбрал библиотеку Telebot, которая предоставляет богатый набор инструментов для разработки функционально-насыщенных ботов.

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

Тестировать бота мы будем с помощью моей жены.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 2

Новости

Фракталы, рекурсия и Python

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 1.3K
Блог компании SkillFactory Python *Программирование *Математика *
Перевод

Фракталы — это бесконечные сложные узоры, которые самоподобны в разных масштабах. Например, ствол дерева расщепляется на ветки. Те распадаются на еще более мелкие ветви и так далее. Программная генерация фракталов превратит простые формы в сложные узоры. Я покажу, как построить впечатляющие фракталы при помощи Python простой геометрии и знания программирования.

Читать дальше →
Всего голосов 2: ↑1 и ↓1 0
Комментарии 0

Как я чистила текст от ударений в словах при помощи Python

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 2.1K
Python *
Из песочницы

Трагедия гуманитария в трех актах.

Читать далее
Всего голосов 8: ↑3 и ↓5 -2
Комментарии 15

Функции Python — это объекты первого класса

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 2.2K
Блог компании OTUS Python *
Перевод

Функции Python — это объекты первого класса. Их можно присваивать переменным, хранить в структурах данных, передавать в качестве аргументов другим функциям и даже возвращать в качестве значений из других функций. Интуитивное понимание этих понятий значительно облегчит понимание таких продвинутых функций Python, как лямбды и декораторы. А также поможет вам продвинуться на пути к техникам функционального программирования.

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

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 1

Истории

Подходы к реализации паттерна Фабрика в Python

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 1.9K
Python *Программирование *Проектирование и рефакторинг *
Обзор

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

Читать далее
Всего голосов 5: ↑0 и ↓5 -5
Комментарии 10

7 уровней построения интерфейсов командной строки на Python

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 4.4K
Настройка Linux *Python *
Туториал
Из песочницы
Перевод

Автор

Выполняйте свои скрипты Python, как команды bash

Написание скриптов Python для создания интерфейсов командной строки (CLI) — широко используемый метод для DevOps и бэкенд разработки.

Ключом к реализации CLI в Python является встроенный модуль argparse. Он предоставляет все необходимые функции и позволяет использовать скрипт Python в качестве команды bash.

В этой статье будут представлены некоторые важные моменты создания CLI с помощью Python на 7 уровнях сложности.

Погрузиться
Всего голосов 11: ↑8 и ↓3 +5
Комментарии 9

Как создать README для Python-проекта за 10 минут: руководство с использованием ChatGPT и Midjourney

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 2.7K
Python *
Туториал
Recovery mode

Привет, читатели Habr! Сегодня я хочу поделиться с вами уникальными и полезными советами о том, как за считанные минуты создать качественный README для вашего Python-проекта и стильный логотип, используя возможности ChatGPT и Midjourney.

В эпоху ИИ, документирование проектов становится не только проще, но и значительно быстрее. Многие разработчики часто игнорируют создание документации, поскольку это занимает много времени. Однако с использованием ИИ это проблема больше не актуальна.

Основная цель состоит в том, чтобы ChatGPT мог разобраться в коде нашего проекта и без труда составить для него README. Однако стоит учесть ограничения: GPT-4 может запомнить до 25 000 слов в диалоге, а GPT-3 — до 3 000 слов. Если вы превысите эти лимиты, ChatGPT потеряет контекст. В связи с этим, просто скопировать 100 000 строк кода и попросить ИИ составить README не получится. Вместо этого мы научимся экономить количество слов и максимально эффективно использовать возможности ИИ.

Читайте далее, и вы узнаете самые лучшие практики и секреты создания README и логотипов с помощью ИИ!

Читать далее
Всего голосов 22: ↑9 и ↓13 -4
Комментарии 2

Как я сделал Telegram-бота для студентов РТСУ

Время на прочтение 28 мин
Количество просмотров 2.6K
Python *TDD *API *
Из песочницы

Привет, Хабр! Я учусь в Российско-Таджикском Славянском университете, собственно у нас в университете действует так называемая кредитно-бальная система.

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

Оно доступно для Android.

Читать далее
Всего голосов 17: ↑15 и ↓2 +13
Комментарии 9

Ирина, голосовой помощник — теперь и со вкусом GPT-3

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 5.1K
Open source *Python *Умный дом Голосовые интерфейсы *

«Лама... Альпака...Чатгпт...» — раздавалась в уютненьком чатике по Ирине.

Хабр был не лучше — статьи по работе с GPT множились как грибы, а в комментах раздавались возгласы в духе «Дайте мне голосового помощника, с которым можно болтать!»

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

Тем не менее, и меня заинтересовало, насколько весело будет именно болтать с GPT, но самому в коде и платном API‑доступе разбираться не хотелось. Но сегодня утром меня снабдили и примером, и ключиком...

‑-

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

— Полностью оффлайн SpeechToText и TextToSpeech
— Поддержка плагинов
— Готовые команды «таймер», «погода» и ряд прочих. Поддержка HomeAssistant.
— Поддержка работы в клиент‑серверном режиме — сервер + куча микрофонов + Телеграм‑клиент, например.

Расскажу, что улучшилось за прошедший год с момента прошлой статьи.

TL;DR> Добавлен плагин для общения с GPT-3 нейросетью. Сделан пакет упрощенной установки под Windows — «скачай и запусти». Сделано два веб‑клиента — один распознает слова прям в браузере (тяжелый), другой отправляет весь звуковой поток на сервер (легкий) — так что можно запускать клиенты, например, на смартфоне. Добавлен TTS Silero v3 — имхо, лучшее озвучивание доступное в открытом доступе. Сделан докер‑образ для быстрого запуска Ирины без установки зависимостей. Добавлено нечеткое распознавание фраз. Обновлена VOSK‑модель распознавания голоса на специально натренированную для Ирины.

Читать далее
Всего голосов 29: ↑29 и ↓0 +29
Комментарии 10

Андрей Гейн: субъективные новости из мира Python

Время на прочтение 8 мин
Количество просмотров 2.7K
Блог компании IT-People Python *Программирование *Конференции
Обзор

Февральскую конференцию EkbPy в Екатеринбурге открывал Андрей Гейн со своим субъективным обзором главных новостей Python. Этот доклад стал одним из лучших на конференции по мнению слушателей, и мы решили поделиться некоторыми его тезисами с вами. 

Читать далее
Всего голосов 24: ↑24 и ↓0 +24
Комментарии 5

Ломаем текстовую капчу на примере VK или брутфорсинг до сих пор актуален

Уровень сложности Средний
Время на прочтение 52 мин
Количество просмотров 8K
Информационная безопасность *Python *ВКонтакте API *Машинное обучение *TensorFlow *
Туториал

Что мы знаем о капче? Капча - автоматизированный тест тьюринга, помогающий отсеивать подозрительные действия недобросовестных роботов от реальных людей. Но, к сожалению ( или к счастью, смотря для кого ), текстовая капча сильно устарела. Если еще 10 лет назад она была более-менее эффективным методом защиты от роботов, то сейчас ее может взломать обойти любой желающий робот, более-менее разбирающийся в компьютере.

В данной статье-мануале я покажу, как создать собственную нейросеть по распознанию капч, имея под рукой домашний компьютер, базовые знания в python и немножко примеров капч.

А ну-ка поподробнее
Всего голосов 51: ↑48 и ↓3 +45
Комментарии 33

Декоратор cached_property

Время на прочтение 4 мин
Количество просмотров 2.4K
Python *Программирование *

В этой статье хочется рассмотреть декоратор cached_property. Почему он есть и в стандартной библиотеке и в Django. Чем они отличаются и когда какой лучше использовать

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 11

Как стать Python-разработчиком с нуля — личный опыт

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 15K
Python *Программирование *Тестирование веб-сервисов *Тестирование мобильных приложений *Карьера в IT-индустрии
Роадмэп
Из песочницы

Это мой первый пост, прошу сильно не пинать. Для начала немного расскажу, кто такой тестировщик. Это специалист, который отлавливает ошибки на всех этапах разработки проекта. Работа рутинная, но ответственная. Получают тестировщики на 20-30% меньше, чем программисты: от 30 000 руб. и выше, всё зависит от опыта.

Становление тестировщиком – самый простой путь старта в IT, есть куда расти (тест-менеджмент, веб-дизайн, чистая разработка).

Эту информацию я почерпнул из открытых источников и подумал, что вот, я не умею программировать, а получать астрономическую зарплату работать в IT – хочется. Думал, что начну с ручного тестирования, устроюсь на работу – а дальше, как пойдёт.

Но на практике оказалось не всё так просто. Кругом полно таких же людей, который думают точно также же, и такие специалисты маловостребованы. Для чего вообще берут на работу стажёров? Работодатель ожидает, что в ближайшем будущем навыки стажёра охрененно вырастут и он будет приносить огромную пользу фирме с дальнейшим повышением зарплаты (но не всегда таким, какую ожидает стажёр). Поэтому чаще всего стажёры, получив опыт, либо настаивают на значительном повышении з/п или уходят к конкурентам.

Несмотря на грустные мысли, я поставил цель – изучить навыки тестирования на Python хотя бы на уровне продвинутого стажёра.

Открыть гайд
Всего голосов 21: ↑19 и ↓2 +17
Комментарии 26

Учим ChatGPT говорить и слушать

Уровень сложности Средний
Время на прочтение 1 мин
Количество просмотров 9K
Open source *Python *Программирование *API *Искусственный интеллект
Туториал

В этой мини статье я покажу как на компьютере при помощи Python3 дать возможность ChatGPT слушать вас и отвечать на вопросы без использования клавиатуры и дисплея.

Читать далее
Всего голосов 13: ↑8 и ↓5 +3
Комментарии 10

Анализ подбора гиперпараметров при обучении нейронной сети прямого распространения — FNN (на примере MNIST)

Время на прочтение 9 мин
Количество просмотров 1K
Python *Программирование *Машинное обучение *Искусственный интеллект
🤖 Сезон machine learning

Фичей побольше, лямбду поменьше, еще dropout и batchsize...
- "играемся" с гиперпараметрами для практического понимания смысла значений и терминов.
Полезно при изучении обучения нейронных сетей.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 2

Пайплайн для создания классификации текстовой информации

Время на прочтение 10 мин
Количество просмотров 2K
Python *Программирование *Машинное обучение *Natural Language Processing *
Кейс
🤖 Сезон machine learning

Привет, Хабр!

Меня зовут Дарморезов Вадим, я Data Scientist и участник профессионального сообщества NTA. Актуальность работы с большими объемами текстовой информации ещё долгое время (а может быть и всегда) будет неоспорима. При этом спектр задач весьма вариативен – от задач по поиску именованных сущностей, до классификации и кластеризации текстов обрабатываемых документов.

Представим ситуацию. Перед вами важная задача – классифицировать огромный поток входящих обращений сотрудников/клиентов для дальнейшего анализа профильными сотрудниками на предмет отклонений и для построения интересующих статистик. Первое решение, приходящее в голову – в ручном режиме просматривать обращения и проводить их классификацию. Спустя пару часов, приходит осознание того, что решение было не самым правильным и так задачу не выполнить в срок. Как же тогда поступить? Именно об этом будет следующий пост.

Узнать больше
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 0

От парсинга к Private API. В гонке за производительностью

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 4.4K
Python *API *
Кейс

В статье будет затронут способ с применением ревёрсинга траффика Android-устройства для обнаружения endpoints, по которым можно взять то, что лежит в более приятной форме, нежели получаемое через парсинг HTML-дерева.

Читать далее
Всего голосов 20: ↑10 и ↓10 0
Комментарии 6

Как работает нативная поддержка категорий в XGBoost

Уровень сложности Простой
Время на прочтение 10 мин
Количество просмотров 874
Блог компании SkillFactory Python *Машинное обучение *Искусственный интеллект
Перевод

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


Ниже объясняется, какие есть варианты, подробно рассказывается об их плюсах и минусах. Особое внимание уделяется встроенной поддержке категориальных функций, представленных недавно в XGBoost и LightGBM.


Если вас интересует градиентный бустинг и его применение к дереву решений, посмотрите мою книгу.

Читать дальше →
Всего голосов 3: ↑1 и ↓2 -1
Комментарии 0

Как с помощью AI-интеграций повысить популярность проекта

Время на прочтение 8 мин
Количество просмотров 1.5K
PHP *Python *Обработка изображений *Искусственный интеллект
Из песочницы

Рассказываем о том, как внедряли новомодные AI-инструменты в проект. Как это повлияло на его популярность и что за этим последовало — читайте в статье.

Технические особенности проекта: фреймворк — Laravel, БД — PostgreSQL, кэш/очереди — Redis, архитектура — основной кластер DigitalOcean Kubernetes и графический кластер GKE.

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Комментарии 7

Девайс HabrScore для хаброзависимых с блекджеком и …

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 5.8K
Блог компании Timeweb Cloud Python *Программирование *Программирование микроконтроллеров *Разработка на Raspberry Pi *
Туториал

|300


Понравилась статья HabraTab — девайс для хаброзависимых, где описана разработка устройства для визуализации рейтинга пользователя на Хабре.


И мне очень захотелось подобное устройство, вот только было несколько но:


  • Очень лень было делать, заказывать и паять печатную плату
  • Еще хотелось выводить рейтинг последней статьи, но хардкодить адрес и каждый раз пересобирать прошивку показалось очень муторно.
  • Разработка на С/С++ меня не пугает, так как занимаюсь этим более 20 лет, но писать что-то под Arduino у меня душа не лежит. И это не говоря про необходимость настройки системы сборки под конкретный микроконтроллер.

Короче, немного поразмыслив, было принято решение делать свое устройство для визуализации рейтингов на Хабре, и как обычно с блекджеком и… ну вы поняли. И самое главное, чтобы можно было собирать устройство из покупных деталей с Алиэкспресса для максимально простого повторения и кодить на чем-нибудь попроще, чем на С/С++.

Читать дальше →
Всего голосов 35: ↑35 и ↓0 +35
Комментарии 12

Вклад авторов

Работа

Python разработчик
137 вакансий
Data Scientist
159 вакансий