Обновить
512K+

Python *

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

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

Запуск/отладка Python скриптов в контейнерах LXC/LXD из под VS Code

Время на прочтение12 мин
Охват и читатели12K
Привет, Хабр!

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

В качестве изолированного окружения будет рассмотрена первичная настройка и создание контейнера на базе LXC под управлением ОС Ubuntu 17.10. Почему не Docker? Сложно ответить, выдать какие-то аргументы. От части концепция виртуализации ОС субъективно ближе по духу, чем виртуализация процессов, но принцип который здесь будет изложен, с некоторыми поправками, подойдет к запуску кода в Docker-контейнерах.



Что вы получите?


  • Научитесь запускать в один клик python-скрипты в контейнере, а также удаленный debug из VS Code
  • Узнаете как установить LXD, настроить сеть и запустить первый контейнер
  • Ознакомитесь с установкой и настройкой редактора исходного кода VS Code, набором расширений которые позволят комфортно писать и отлаживать код.

Чего здесь не будет?


  • Не будет полного обзора LXC/LXD, вам придется самостоятельно найти дополнительную информацию о Linux-контейнерах.
  • Не будет рассмотрен python модуль virtualenv для создания виртуального окружения на хосте разработчика как альтернатива контейнерам.
  • Не будет сравнения в духе Docker vs LXD, выводы вы сделаете самостоятельно на основании вашего опыта.
Читать дальше →

Как быстро настроить email-аутентификацию в Django

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

Всем привет!


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


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


Django

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

Генерация кода на Python при помощи Hy

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

1. Что такое Hy


Hy — диалект Лиспа, который встроен в питон.


Благодаря тому, что Hy трансформирует свой Лиспоподобный код в Абстрактное Синтаксическое Дерево (AST) питона, с помощью Hy весь прекрасный мир питона — на кончиках пальцев и в форме Лиспа.


image

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

Оптимизация портфеля ценных бумаг средствами Python

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

Введение


На финансовом рынке обращается, как правило, несколько типов ценных бумаг: государственные ценные бумаги, муниципальные облигации, корпоративные акции и т.п.

Если у участника рынка есть свободные деньги, то их можно отнести в банк и получать проценты или купить на них ценные бумаги и получать дополнительный доход. Но в какой банк отнести? Какие ценные бумаги купить?

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

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

Целью настоящей публикации является разработка методов оптимизации портфелей ценных бумаг с использованием библиотеки scipy.optimize. Пришлось исследовать и применить при программировании такие мало известные возможности указанной библиотеки, как введение дополнительных ограничений в функцию цели [2].
Читать дальше →

«Рок это жёстко» или я.музыка как граф

Время на прочтение5 мин
Охват и читатели10K
КДПВ

Я очень давно пользуюсь яндекс музыкой для поиска «что послушать». Чаще всего, я просто хожу по похожим исполнителям приятных мне групп, однако, этот метод уже давно не даёт результатов. Какое-то время мои потребности закрывало я.радио с фильтром по жанру, но и его репертуар на удивление скуп. Настало время решать проблему глобально, и вот что из этого получилось =)
Читать дальше →

ScadaPy — использование OPC UA

Время на прочтение5 мин
Охват и читатели44K
В предыдущих нескольких статьях, мною были описаны возможности применения протокола modbus для создания собственной Scada системы на базе python. В этот раз хочется поделиться опытом построения системы опроса подчиненных устройств с использованием ОРС технологии.
Недостатки OPC серверов в том, что их можно использовать только в операционных системах семейства Microsoft Windows (как правило они платные), а об устройствах использующих ОС Linux можно было забыть.

Но со временем была создана спецификация OPC Unified Architecture (англ. Унифицированная архитектура OPC), что дало возможность использовать данную технологию передачи данных на иных операционных системах отличных от Windows. Это касается и встраиваемых систем, где может быть запущен полноценный Linux.

Подробнее можно прочитать здесь.
Читать дальше →

Предсказание связей в социальных сетях: используем точки перехода

Время на прочтение3 мин
Охват и читатели4.4K
Актуальные исследования в области предсказательного сетевого моделирования используют различные метрики, являющиеся индикаторами образования связей между агентами — однако игнорируют распределение процесса появления новых связей в сети.
В данной статье я расскажу о том, как применить точки перехода (change points) для решения Link Prediction Problem, на примере сети Flickr.


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

Народный мониторинг ESP8266 MQTT Micropython

Время на прочтение2 мин
Охват и читатели26K
Как быстро, без особых вложений, начать выкладывать метеоданные на народный мониторинг?
Опишу одно из решений на базе ESP8266.
Читать дальше →

Телеграм-бот для домашнего видео-наблюдения из подручных материалов

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

Disclaimer


Эта статья содержит некоторое количество программного кода, написанного на языке Python. Ввиду того, что автор статьи по профессии является сисадмином, но не программистом — стиль и качество этого кода, могут вызвать проявление неконтролируемых эмоций у профессионалов. Пожалуйста, немедленно прекратите чтение если вид неаккуратного или неоптимального кода может негативно сказаться на вашем психическом состоянии.


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


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



Из всего перечисленного, было решено построить систему домашнего видео-наблюдения с функционалом оповещения о вторжении. В качестве платформы был выбран телеграм-бот. Бот имеет следующие преимущества перед другими возможными реализациями (веб, мобильное приложение):


  • Не требуется установки дополнительного клиентского ПО
  • Серверная часть может работать с приватным IP адресом через NAT, при этом предъявляются минимальные требования к подключению (вплоть до 3G модема)
  • Большая часть инфраструктуры находится на стороне сервис-провайдера, который за меня решил вопросы авторизации, безопасности итп...

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

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

Пишем список дел на Python 3 для Android через QPython3 и SL4A

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


Движок QPython (и QPython 3) для Android – вещь по-прежнему плохо изученная, и особенно что касается его встроенной библиотеки Scripting Layer For Android (SL4A), она же androidhelper. Эту библиотеку написали несколько сотрудников Google по принципу 20% свободного времени, снабдили ее спартанской документацией, которую почти невозможно найти, и отправили в свободное плавание. Я искал информацию об SL4A по крупицам, но со временем нашел практически все, что мне нужно.

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

Анонс Moscow Python Meetup #50

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

Всем привет! 23 ноября на Мансарде Rambler&Co пройдет юбилейная пятидесятая встреча сообщества MoscowPython. На встрече мы услышим 3 доклада.
Читать дальше →

Анонс Moscow Spark #3

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

Всем привет! Мы долго готовились, искали крутых докладчиков и, наконец, анонсируем Moscow Spark #3, который состоится 16 ноября на Мансарде Rambler&Co! Предыдущий митап собрал почти 250 человек, и мы рассчитываем, что сможем собрать не меньше в этот раз. Ключевой темой этого мероприятия станет Spark Streaming, актуальная и очень интересная часть фреймворка Apache Spark.
Читать дальше →

Математическая модель динамики финансового рынка

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

Введение


Изменение курса валют на финансовом рынке влияет на цены товаров и услуг. Поэтому важно знать период времени через который цены начнут реагировать на смену курса валют.

Сложность решения указанной задачи состоит в большом количестве факторов влияющих на смену курса валют [1]. Эффективным способом отсеять ряд второстепенных факторов для определения основных тенденций рынка является применения «белого» фильтра Винера Хопфа [2,3].

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

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


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

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

Убираем радиальное искажение с фото и видео при помощи библиотеки openCV и языка python

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

В данной статье будет рассказываться о применении библиотеки машинного зрения (openCV) для удаления эффекта радиального искажения (дисторсии) с фото и видео. Данный эффект также известен как эффект рыбьего глаза (fisheye) или distortion. Решение написать данную статью было принято после нескольких дней поиска информации в интернете. Не смотря на то, что есть гайды на английском языке, они не объясняют как правильно установить openCV, чтобы все работало. В статье присутствует готовый код.


Сразу привожу фото итогового результата. Слева оригинальное фото, справа — обработанное:


before after

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

Хронология уровня CO в атмосфере США (решение задачи Kaggle с помощью Python+Feature Engineering)

Время на прочтение5 мин
Охват и читатели6.8K
Хочу поделиться опытом решения задачи по машинному обучению и анализу данных от Kaggle. Данная статья позиционируется как руководство для начинающих пользователей на примере не совсем простой задачи.

Выборка данных

Выборка данных содержит порядка 8,5 млн строк и 29 столбцов.Вот некоторые из параметров:

  • Широта-latitude
  • Долгота-longitude
  • Способ взятия пробы-method_name
  • Дата и время взятия пробы-date_local

image

Задача

  1. Найти параметры максимально влияющие на уровень CO в атмосфере.
  2. Создание гипотезы, предсказывающей уровень CO в атмосфере.
  3. Создание нескольких простых визуализаций.
Читать дальше →

Синтаксический анализ в NLTK

Время на прочтение9 мин
Охват и читатели24K
Здравствуйте. Это статья об синтаксическом анализе предложений, их представлении. Для разбора предложений будет использоваться пакет NLTK и язык программирования Python (версии 2.7).

Вступление


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

Математическая модель вибрационного уровнемера с резонатором в виде консольной эллиптической трубки

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

Введение


В публикации [1] подробно рассмотрена реализация на Python метода измерения отношения частот с использованием фигур Лиссажу. В качестве примера были проанализированы формы колебаний консольной эллиптической трубки вибрационного уровнемера [2].



Упруго закреплённая трубка эллиптического сечения с помощью систем возбуждения 5,6,7 совершает автоколебания в одной плоскости, а с помощью систем 8, 9, 10 в другой плоскости перпендикулярной первой. Трубка колеблется в двух взаимно перпендикулярных плоскостях с разными частотами близкими к собственным. Масса трубки зависит от уровня заполняющей её жидкости.

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

Остался не решённым вопрос определения зависимости частот колебаний трубки от уровня заполняющей жидкости что и является предметом данной публикации.

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


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

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

Для реализации указанных задач средствами Python рассмотреть два метода решения символьный и символьно-численный. Сравнить указанные методы по производительности
Читать дальше →

Мониторинг событий git clone и git push на локальном GitLab сервере

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

Иногда возникает желание мониторить локальный GIT сервер на предмет кто (ФИО из LDAP), какой проект и откуда(ip-адрес) клонит или пушит.

Изучив документацию, стало ясно, что такого функционала из коробки нет, точнее есть, но в платной версии GitLab. Под катом мой опыт реализации мониторинга.
Читать дальше →

Где перспективно и адекватно использовать Python

Время на прочтение6 мин
Охват и читатели152K
В прошлой статье мы уже обсудили с вами причины, по которой Python нельзя назвать идеальным языком для новичков, хотя на том же Хабре бытует мнение, что Python – это выбор номер один и вообще топчик.

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

Краткий курс машинного обучения или как создать нейронную сеть для решения скоринг задачи

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

Мы часто слышим такие словесные конструкции, как «машинное обучение», «нейронные сети». Эти выражения уже плотно вошли в общественное сознание и чаще всего ассоциируются с распознаванием образов и речи, с генерацией человекоподобного текста. На самом деле алгоритмы машинного обучения могут решать множество различных типов задач, в том числе помогать малому бизнесу, интернет-изданию, да чему угодно. В этой статье я расскажу как создать нейросеть, которая способна решить реальную бизнес-задачу по созданию скоринговой модели. Мы рассмотрим все этапы: от подготовки данных до создания модели и оценки ее качества.

Если тебе интересно машинное обучение, то приглашаю в «Мишин Лернинг» — мой субъективный телеграм-канал об искусстве глубокого обучения, нейронных сетях и новостях из мира искусственного интеллекта.

Вопросы, которые разобраны в статье:

• Как собрать и подготовить данные для построения модели?
• Что такое нейронная сеть и как она устроена?
• Как написать свою нейронную сеть с нуля?
• Как правильно обучить нейронную сеть на имеющихся данных?
• Как интерпретировать модель и ее результаты?
• Как корректно оценить качество модели?
Поехали!