Доброго времени суток, уважаемыее. Не секрет, что одноплатные Linux сомпьютеры на базе SoC на сегоднящний день получили широкое распространение как среди любителей, так и среди более-мелее профессиональных пользователей. Все больше и больше задач можно решить с помощью микрокомпьютеров, и даже тех задач, которые раньше решались исключительно при помощи микроконтроллеров. Казалось бы, использование полноценного, хоть и мелкого компьютера для решения простых задач — это тот еще оверкилл, однако давайте разберемся, так ли это плохо? Эта статья является ответом на наш небольшой спор сином devzona по этому поводу.
Читать полностью »
Метка «python» - 9
Школьный звонок на Raspberry Pi с удаленным управлением
2013-12-24 в 20:55, admin, рубрики: diy или сделай сам, linux, python, Raspberry Pi, метки: diy или сделай сам, linux, python, Raspberry PiPeewee – лёгкая, гибкая и очень быстрая ORM на Python
2013-12-24 в 9:35, admin, рубрики: flask, orm, python, базы данных, Веб-разработка, Питон, метки: benchmark, flask, orm, python, базы данных, Питон
Предлагаю всем джангистам/алхимистам немного отвечься и почитать вольную интерпретацию вводного туториала и частично документации по Peewee – stand-alone ORM, обязательной к ознакомлению любому питонщику и, в особенности, фласкеру. Пишут о ней мало, а зря. С Peewee очень просто подружиться, особенно если вы уже знакомы с какой-нибудь ORM на ActiveRecord. Что более важно – с ней приятно дружить :) Ну, начнём.
pip install peewee
Из репозитория:
git clone https://github.com/coleifer/peewee.git cd peewee python setup.py install
Тесты:
python setup.py test
Есть обвязка для flask:
pip install flask-peewee
Определение моделей или «попахивает джангой»
Весь нижеследующий код можно повторить один к одному в интерактивном интерпретаторе или отдельном скрипте.
from peewee import *
db = SqliteDatabase('people.db')
class Person(Model):
name = CharField()
birthday = DateField()
is_relative = BooleanField()
class Meta:
database = db # модель будет использовать базу данных 'people.db'
Типов полей много, на все случаи жизни. Peewee берёт на себя преобразование питоновских объектов в значения, подходящие для базы данных, и наоборот.
Читать полностью »
Анализ временных рядов с помощью python
2013-12-24 в 8:01, admin, рубрики: data mining, python, метки: python Добрый день, уважаемые читатели.
В сегодняшней статье, я попытаюсь описать процесс анализа временных рядов с помощью python и модуля statsmodels. Данный модуль предоставляет широкий набор средств и методов для проведения статистического анализа и эконометрики. Я попытаюсь показать основные этапы анализа таких рядов, в заключении мы построим модель ARIMA.
Для примера взяты реальные данные по товарообороту одного из складских комплексов Подмосковья.
Читать полностью »
Python-digest #7. Новости, интересные проекты, статьи и интервью [13 декабря 2013 — 20 декабря 2013]
2013-12-20 в 5:46, admin, рубрики: python, дайджест, метки: python, дайджестМного новостей хороших и разных о Python и жизни вокруг него. Благодарю owlman за неиссякающий энтузиазм в подготовке иллюстраций, axce1 за анонсы статей о Pyramid.
Присылайте ссылки на статьи мне в скайп (он совпадает с ником на хабре), пишите сами больше о Python. Не жалейте плюсиков (или минусиков) для дайджеста и активно высказывайте ваше мнение в коментариях — именно это служит стимулом для того, чтобы перед каждыми выходными у вас было свеженькое чтиво.
Прошу, также, принять участие в опросе по поводу первого выпуска дайджеста 2014 года. По результатам опроса в прошлом выпуске оформление рускоязычные статьи vs англоязычные возвращено к начальному варианту. Традиции это хорошо, пусть они еще и краткосрочные.
Интерпретатор Python: о чём думает змея? (часть I-III)
2013-12-19 в 7:09, admin, рубрики: python, интерпретатор, Питон, Программирование, метки: python, интерпретатор, Питон
Данная серия статей рассчитана на тех, кто умеет писать на python в целом, но плохо представляет как этот язык устроен изнутри. Собственно, как и я три месяца назад.
Небольшой дисклеймер: свой рассказ я буду вести на примере интерпретатора python 2.7. Всё, о чем пойдёт речь далее, можно повторить и на python 3.x с поправкой на некоторые различия в синтаксисе и именование некоторых функций.
Итак, начнём.
Читать полностью »
Python на Хабре
2013-12-18 в 6:12, admin, рубрики: django, GIL, pygtk, pyqt4, python, python3, tkinter, tornado, twisted, wxpython, декораторы, обучение, Программирование, метки: Django, GIL, pygtk, pyqt4, python, python3, tkinter, tornado, twisted, wxpython, декораторы, обучение Некоторое время назад, в силу определенных причин, мне пришла в голову мысль о том, чтобы начать изучать какой-нибудь новый язык программирования. В качестве альтернатив для этого начинания я определил два языка: Java и Python. После продолжительного метания между ними и сопутствующих нытья и долбежки головой о стену (у меня с новыми языками всегда так — сомнения, раздумья, проблема выбора и т.д.), я все-таки остановился на Python. Окей, выбор сделан. Что дальше?
Читать полностью »
Python Meetup: ноябрьская встреча
2013-12-17 в 12:38, admin, рубрики: celery, gevent, GIL, jetbrains, meetup, python, wargaming.net, Блог компании Wargaming.net, минск, Программирование, метки: celery, gevent, GIL, jetbrains, meetup, python, wargaming.net, минск
В конце ноября в Минске прошла очередная встреча Python Meetup. Четыре интереснейших доклада на около-python-овские темы, авторитетные спикеры. Кстати, впервые к нам приехал спикер не из Беларуси — это был Андрей Власовский, опытный докладчик из компании JetBrains.
В ноябрьском митапе мы рассмотрели опциональную типизацию в Python, асинхронное распределенное выполнение задач, введение в GIL и новый GIL, а также использование gevent для эмуляции высокой нагрузки.
Видео всех докладов, как и ссылки на презентации, можно найти под катом.
Читать полностью »
Детализированный мониторинг запросов к Apache при помощи Python и Munin
2013-12-17 в 7:59, admin, рубрики: Apache, daemon, linux, logging, monitoring, munin, python, веб-аналитика, системное администрирование, метки: apache, daemon, linux, logging, monitoring, munin, pythonОдним из заданий во время моей недавней стажировки в ТомТоме было улучшение средств мониторинга веб-серверов компании. Конкретнее, необходимо было написать несколько плагинов к Munin, которые выводили бы подробную статистику запросов к нашим API из логов доступа Apache. Задача эта изначально может показаться примитивной — всего-то и нужно, что распарсить файл лога и вывести результаты в понимаемом Munin формате. Однако, для создания действительно надежной и удобной утилиты с гибкими возможностями настройки мне пришлось немало повозиться. Чтобы эта работа не пропала зря, я разместил код на Гитхабе под названием elfstats. В этой статье я расскажу о том, какие задачи способна решать данная утилита, чтобы заинтересовавшиеся сетевые инженеры смогли применить её в своих окружениях.
Вкратце, перед началом работы с elfstats необходимо описать обрабатываемые веб-сервером запросы при помощи регулярных выражений. После этого программа будет регулярно парсить логи доступа и генерировать файл отчета, содержащий количество запросов и распределение времени отклика для каждого из описанных шаблонов. Далее, этот отчет будет обрабатываться при помощи Munin и выводиться в виде соответствующих графиков. Таким образом, установив и настроив elfstats, вы сможете легко отслеживать изменения в работе ваших приложений и поведении пользователей на уровне веб-сервера.
Читать полностью »
Простой интерпретатор с нуля на Python (перевод) #1
2013-12-17 в 7:37, admin, рубрики: python, интерпретатор, Питон, с нуля, метки: python, интерпретатор, Питон, с нуляВещь, которая привлекла меня изучать компьютерную науку была компилятором. Я думал, что это все магичя, как они могут читать даже мой плохо написанный код и компилировать его. Когда я прошел курс компиляторов, я стал находить этот процесс очень простым и понятным.
В этом цикле статей я попытаюсь захватить часть этой простоты путем написания простого интерпретатора для обычного императивного языка IMP (IMperative Language). Интерпретатор будет написан на Питоне, потому что это простой и широко известный язык. Также, питон-код похож на псевдокод, и даже если вы не знаете его [питон], у вас получится понять код. Парсинг будет выполнен с помощью простого набора комбинаторов, написанных с нуля (подробнее расскажу в следующей части). Никаких дополнительных библиотек не будет использовано, кроме sys (для I/O), re (регулярные выражения в лексере) и unittest (для проверки работоспособности нашей поделки).
Читать полностью »
Пример решения задачи множественной регрессии с помощью Python
2013-12-17 в 4:36, admin, рубрики: data mining, pandas, python, метки: pandas, pythonВведение
Добрый день, уважаемые читатели.
В прошлых статьях, на практических примерах, мной были показаны способы решения задач классификации (задача кредитного скоринга) и основ анализа текстовой информации (задача о паспортах). Сегодня же мне бы хотелось коснуться другого класса задач, а именно восстановления регрессии. Задачи данного класса, как правило, используются при прогнозировании.
Для примера решения задачи прогнозирования, я взял набор данных Energy efficiency из крупнейшего репозитория UCI. В качестве инструментов по традиции будем использовать Python c аналитическими пакетами pandas и scikit-learn.
Читать полностью »