Обновить
512K+

Python *

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

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

Создание и хостинг телеграм бота. От А до Я

Время на прочтение15 мин
Охват и читатели189K
Привет, хабрчане! Какой бы заезженной не была тема создания телеграм бота на python3, я не нашёл инструкций, где показан путь от первой строчки кода до деплоинга бота (по крайней мере все методы, что я видел, немного устарели). В этой статье я хочу показать процесс создания бота от написания BotFather-у до деплоинга бота на Heroku.

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

P.S. Пишите если нужна статья по созданию более сложного бота, т.е. с вебхуками, БД с настройками юзеров и т.д.


Для начала стоит определиться, что же будет делать наш бот. Я решил написать банального простого бота, кторый будет парсить и выдавать нам заголовки с Хабра.
И так, начнём же.
Читать дальше →

Мега-Учебник Flask, Часть XIV: Ajax

Время на прочтение17 мин
Охват и читатели46K

(издание 2018)


Miguel Grinberg




Туда Сюда


Это четырнадцатая часть Мега-Учебника Flask, в которой я собираюсь добавить функцию перевода текста в реальном времени, используя службу перевода Microsoft и немного JavaScript.

Читать дальше →

Коэффициент Джини. Из экономики в машинное обучение

Время на прочтение17 мин
Охват и читатели178K
Интересный факт: в 1912 году итальянский статистик и демограф Коррадо Джини написал знаменитый труд «Вариативность и изменчивость признака», и в этом же году «Титаник» затонул в водах Атлантики. Казалось бы, что общего между этими двумя событиями? Всё просто, их последствия нашли широкое применение в области машинного обучения. И если датасет «Титаник» в представлении не нуждается, то об одной замечательной статистике, впервые опубликованной в труде итальянского учёного, мы поговорим поподробней. Сразу хочу заметить, что статья не имеет никакого отношения к коэффициенту Джини (Gini Impurity), который используется в деревьях решений как критерий качества разбиения в задачах классификации. Эти коэффициенты никак не связаны друг с другом и общего между ними примерно столько же, сколько общего между трактором в Брянской области и газонокосилкой в Оклахоме.

Коэффициент Джини (Gini coefficient) — метрика качества, которая часто используется при оценке предсказательных моделей в задачах бинарной классификации в условиях сильной несбалансированности классов целевой переменной. Именно она широко применяется в задачах банковского кредитования, страхования и целевом маркетинге. Для полного понимания этой метрики нам для начала необходимо окунуться в экономику и разобраться, для чего она используется там.
Читать дальше →

Делаем приём платежей криптовалютой своими руками

Время на прочтение8 мин
Охват и читатели85K

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


Время от времени замечаю вопросы о том, как принимать платежи Bitcoin на своём сайте без использования сторонних сервисов. Это достаточно просто, но надо учитывать, что есть подводные камни.


В этой статье я постараюсь максимально подробно, без акцента на каком-либо языке программирования, описать, как сделать приём платежей Bitcoin (а также, при желании — Litecoin, Dash, Bitcoin Cash, Steep, ONION и т.п.), начиная с разворачивания полной ноды и заканчивания проверкой поступления платежа.

Читать дальше →

Коллаборация Visual Studio Code и Anaconda

Время на прочтение3 мин
Охват и читатели30K

Не так давно было объявлено о включении Visual Studio Code в дистрибутив Anaconda, что несомненно является большим шагом в развитии инструментов анализа данных с открытым исходным кодом.
Читать дальше →

Мега-Учебник Flask, Часть XIII: I18n и L10n (издание 2018)

Время на прочтение15 мин
Охват и читатели36K

Miguel Grinberg




Туда Сюда


Это тринадцатая часть серии Мега-Учебник Flask, в которой я расскажу вам, как реализовать поддержку нескольких языков для вашего приложения. В рамках этой работы вы также узнаете о создании собственных расширений CLI для flask.


Для справки ниже приведен список статей этой серии.

Читать дальше →

Pygest #23. Новости, релизы, статьи, интересные проекты и библиотеки из мира Python [4 февраля 2018 — 26 февраля 2018]

Время на прочтение2 мин
Охват и читатели9.3K

image Всем привет! Это уже двадцать третьи выпуск дайджеста на Хабрахабр о новостях из мира Python.

Присылайте свои интересные материалы из мира Python.

С предыдущим digest можно ознакомиться здесь.

Читать дальше →

Классификация объектов в режиме реального времени

Время на прочтение5 мин
Охват и читатели43K


Автор: Игорь Пантелеев, Software Developer, DataArt

Распознавание изображений очень широко используется в машинном обучении. В этой области существует множество различных решений, однако потребностям нашего проекта ни оно из них не удовлетворяло. Нам понадобилось полностью локальное решение, которое способно работать на крошечном компьютере и передавать результаты распознавания на облачный сервис. В этой статье описывается наш подход к созданию решения для распознавания изображений с помощью TensorFlow.
Читать дальше →

Беспоисковый метод расчета настроек регуляторов средствами Python

Время на прочтение13 мин
Охват и читатели13K


Введение


Беспоисковый метод — простой, надёжный и универсальный метод расчёта настроек субоптимальных регуляторов, включая и такие алгоритмы как ПД, ПДД и ПИДД [1].

Однако, приведенная в [1] программная реализация данного метода имеет ряд недостатков, что затрудняет его применение в микропроцессорных регулирующих приборах.

Среди недостатков можно выделить такие:

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

В работе [1] для реализации беспоискового метода расчёта регуляторов рассматривается передаточная функция объекта вида:



что при второй степени оператора p в знаменателе ограничивает точность динамической идентификации объекта управления [2].

Постановка задачи:


1. Средствами высокоуровневого языка программирования Python определять по КЧХ субоптимального регулятора максимальное и минимальное значение частот так, чтобы, при максимуме частоты, мнимая и действительная часть передаточной функции были положительными;

2. Средствами библиотеки scipy. optimize высокоуровневого языка программирования Python найти по передаточной функции субоптимального регулятора настройки регулятора, а средствами библиотеки scipy. integrate получить переходные характеристики замкнутой системы регулирования;

3. Для более точной идентификации объекта, использовать в расчётах передаточную функцию, имеющую третью степень оператора p в знаменателе;



4. Сравнить переходные характеристики замкнутой системы, полученные поисковым [3] и беспоисковым методами;

5. Построить с использованием беспоискового метода переходную характеристику для ПИДД алгоритма, сравнить её по интегральному квадратичному критерию качества регулирования с ПИД алгоритмом.
Читать дальше →

Как собрать сильную команду аналитиков и инженеров данных? Опыт компании Wish. Часть 2

Время на прочтение7 мин
Охват и читатели4.9K
В первой части мы рассмотрели, как в компании Wish была перестроена инфраструктура данных для того, чтобы увеличить их аналитические возможности. На этот раз уделим внимание человеческим ресурсам и поговорим о том, как дальше масштабировать компанию и создать идеальные команды инженеров и аналитиков. Также расскажем и о нашем подходе к найму самых талантливых кандидатов на рынке.


Читать дальше →

Регулярные выражения в Python от простого к сложному. Подробности, примеры, картинки, упражнения

Время на прочтение25 мин
Охват и читатели1.9M

Регулярные выражения в Python от простого к сложному




Решил я давеча моим школьникам дать задачек на регулярные выражения для изучения. А к задачкам нужна какая-нибудь теория. И стал я искать хорошие тексты на русском. Пяток сносных нашёл, но всё не то. Что-то смято, что-то упущено. У этих текстов был не только фатальный недостаток. Мало картинок, мало примеров. И почти нет разумных задач. Ну неужели поиск IP-адреса — это самая частая задача для регулярных выражений? Вот и я думаю, что нет.
Про разницу (?:...) / (...) фиг найдёшь, а без этого знания в некоторых случаях можно только страдать.

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

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

Балуемся с унарными операторами в Python

Время на прочтение4 мин
Охват и читатели35K
>>> +--+_+-+_++_+--_+_-_+-+-+-___++++_+-_-+++_+-+_--++--_
'ПРИВЕТ, ХАБР!'

Что это было? Да, вы не ошиблись — это азбука Морзе с плюсиками вместо точек прямо в синтаксисе Питона!

Если вы не понимаете, как это работает, или просто не прочь освежить свои знания в День Советской армии (и Военно-морского флота!), добро пожаловать под кат.
Читать дальше →

На волнах эффекта Ли: Питонизируем генерацию DAF

Время на прочтение7 мин
Охват и читатели6.1K
imageПо статистике 1-4 % населения Земли подвержены дефекту речи, характеризующимся частой пролонгацией звуков (слогов, слов) и/или частыми остановками в речи, нарушающими ритмическое ее течение. В простонародье этот феномен известен как заикание.

На данный момент мир не знает панацеи, на 100 % избавляющей от заикания, однако существует преинтереснейший метод, позволяющий с тем или иным успехом купировать это речевое нарушение у большинства заикающихся. Метод основан на эффекте Ли, заключающемся во влиянии задержки акустической слуховой афферентации на плавность речи, и носит название DAF (Delayed Auditory Feedback).

Ниже рассмотрим пример построения на коленке простого генератора речевой обратной связи силами Python и PyQt. У-у-ух, it's gonna be fun!
Читать дальше →

Ближайшие события

Оптимизация настроек ПИД регулятора по интегральному критерию качества регулирования

Время на прочтение12 мин
Охват и читатели14K


Постановка задачи оценки качества регулирования


Интегральные оценки качества регулирования характеризует суммарное отклонение реального переходного процесса в системе от идеализированного переходного процесса.

В качестве идеализированного процесса обычно принимается ступенчатый (скачкообразный) переходный процесс или экспоненциальный процесс с заданными параметрами экспоненты.

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

В данной публикации определение оптимальных настроек регулятора осуществляется на основе критерия оптимальности в виде суммы линейного и квадратичного интегральных показателей качества регулирования.
Читать дальше →

Методы конструирования тестовых функций

Время на прочтение4 мин
Охват и читатели5.3K
В ходе работы с глобальной оптимизацией, появилась потребность в конструировании многоэкстремальных тестовых функций. Зачастую большинство готовых функций, например из Википедии, не подходят для корректной оценки работы алгоритма. Часть функций являются одноэкстремальными, для таких примеров больше подходят алгоритмы локального поиска, другая – относится к овражным. Для глобальной же оптимизации необходимо использовать многоэкстремальные, где экстремумы ощутимо различаются по величине.

Рассмотрим некоторые методы, позволяющие легко конструировать тестовые многоэкстремальные функции, при этом, позволяющие задавать конкретные свойства: метод Фельдбаума, функции на основе гиперболических потенциалов и функции на основе экспоненциальных потенциалов. Кроме перечисленных методов есть гармонические многоэкстремальные функции и различные их комбинации.
Читать дальше →

How-to: смена основного домена в G Suite для всей компании и с сохранением всех данных

Время на прочтение8 мин
Охват и читатели10K


Появилась необходимость сменить основной домен компании в G Suite с .ru на .com с сохранением всех данных, календарей, псевдонимов и доступов на сторонние ресурсы. Информации о переезде в интернете не очень много, а точнее, кроме справки самого Google, вообще ничего не нашлось, что и стало причиной создания этого how-to. Будет полезно, если кто-то решит повторить подобное.

Дело в том, что изначально в компании использовался домен pixonic.ru. Затем был добавлен псевдоним pixonic.com, но везде по умолчанию стояла почта в зоне .ru. А так как многие сотрудники компании ведут переписку с зарубежными коллегами и клиентами, было желание использовать международный формат. Для этого им приходилось заходить в настройки аккаунта, самостоятельно менять основной почтовый адрес и приводить подпись в соответствие с корпоративным шаблоном. Не все это делали (или делали, но через раз) и можно представить, какой беспорядок и путаница творились в ветках сообщений. Для внешних партнеров это выглядело еще менее презентабельно из-за разных подписей.

В общем, настал момент, когда было решено — вся переписка должна вестись с использованием почты pixonic.com. Задача упала на нас — системных администраторов.

В конце статьи есть ссылка на весь скрипт, поэтому в тексте будут лишь его куски.
Читать дальше →

Python, Delphi и C++ глазами учёного

Время на прочтение7 мин
Охват и читатели53K
Статья про использование Python в научных вычислениях подтолкнула меня написать эту статью. Это история, случившаяся со мной и с коллегами 6 лет назад. На тот момент я уже достаточно подразобрался с Delphi и Python, но только теперь я ощущаю что достаточно поработал с C/C++, чтобы здраво оценить время на «ремонт» сломанного кода и вообще — общее время разработки. Да, это статья про код, который был написан разными людьми на Delphi, Python и C++ для одной и той же задачи, внутри одной команды.



Читать дальше →

Мега-Учебник Flask, Часть XII: Даты и время (издание 2018)

Время на прочтение8 мин
Охват и читатели26K

Мега-Учебник Flask, Часть XII: Даты и время (издание 2018)


Miguel Grinberg




Туда Сюда


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

Читать дальше →

«Конкурс» на лучшую программную реализацию, выводящую число ‘‘сорок два’’

Время на прочтение3 мин
Охват и читатели6.3K
Понимаю, что данная статья наверняка вызовет вопросы у модераторов (о целесообразности её пребывания на Хабре), но где как не здесь [на крупнейшем в Европе ресурсе для IT-специалистов] поднимать вопрос ответа на главный вопрос с точки зрения IT?

Для начала вкратце объясню, почему этот вопрос вообще актуален.

░░░░░░░░░░░░░░░░░░░░░░░░░░
░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░
░░▒▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒▒░░
░░▒▒▓▓██▓▓██▓▓██████▓▓▒▒░░
░░▒▒▓▓██▓▓██▓▓▓▓▓▓██▓▓▒▒░░
░░▒▒▓▓██████▓▓██████▓▓▒▒░░
░░▒▒▓▓▓▓▓▓██▓▓██▓▓▓▓▓▓▒▒░░
░░▒▒▓▓▓▓▓▓██▓▓██████▓▓▒▒░░
░░▒▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒▒░░
░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░
░░░░░░░░░░░░░░░░░░░░░░░░░░

Читать дальше →

Готовый шаблон сайта с регистрацией, юзерами и админами на Flask с базами SQL или MongoDB

Время на прочтение3 мин
Охват и читатели63K
flask

Бывает, приходится делать сайты на flask, у которых есть пользователи и админы. Чисто для себя решил как-то это стандартизировать и, главное, не терять время, когда такая задача появляется. Цель — в несколько команд получить рабочий сайт у которого есть:

  • Регистрация
  • Email подтверждение
  • Авторизация
  • Выход (logout)
  • Администраторы и роли администраторов
  • Административная, пользовательская и публичная часть сайта
  • Возможность юзера менять пароль
  • Восстановление пароля
  • Локализация для иностранных языков
Читать дальше →