Обновить
844.48

Python *

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

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

Python или не Python

Время на прочтение3 мин
Охват и читатели4.7K
Я расскажу о проблемах с которыми столкнулся, выбрав Python3 первым языком.
Я не изучал программирование в университете.
Я не хочу начинать holywar.

В 2016 Google советовал учить Python3 если нужен:

1. Легкий для старта язык.
2. Язык для машинного обучения.
3. Язык для простых 2d игр.

1. Я посмотрел первую лекцию курса Harvard CS50 на сайте JavaRush и понял, что не хочу:

#include <stdio.h>
int main(int argc, const char *argv[]) {
    printf("Hello world\n");
    return 0;
}

Когда можно так:

print('Monty Python')

JavaScript испугал комбинацией из трех систем: JS/HTML/CSS.

2. Машинное обучение вдохновляло тем, что все статьи и примеры напоминали киберпанк и научную-фантастику.

3. Можно программировать игры? Супер!
Читать дальше →

Несколько полезных советов как практиковаться в Python

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

Привет, Хабр! Сегодня я предлагаю Вам перевод статьи Duomly, посвящённой изучению и практике программирования на языке Python.


Введение


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


Не смотря ни на что, имеется несколько вещей общих для всех, одна из них — Вам нужно практиковаться, очень много практиковаться!

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

PeopleBlending: создаём Science Art с помощью когнитивных сервисов и небольшого количества креативности

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

Я верю в то, что не только красота спасёт мир, но ещё и междисциплинарность. Поскольку моя дочь любит искусство, а я люблю программировать — я часто присматриваюсь к пересечению этих областей, которое можно назвать генеративным искусством (generative art), и которое является частью Science Art. В этой статье я хочу поделиться результатами одного креативного эксперимента по рисованию портрета, из которого родилась техника Cognitive People Blending:



Glass Girl, 2019 Vickie Rotator, 2019

Эти портреты создавались из нескольких фотографий, наложенных друг на друга таким образом, чтобы глаза совпадали — при этом основные черты лица подчеркиваются, фон размывается, и получается любопытный смешанный портрет. Такое безусловно можно сделать в PhotoShop, но это мучительно, и не оставляет места для быстрых экспериментов с разными фотографиями. Ниже я покажу, как такие портреты можно создавать автоматически с помощью когнитивных сервисов Microsoft и небольшого количества креативности. Вы сможете найти весь рассматриваемый мною код в этом репозитории, и сразу начать использовать его с помощью Azure Notebooks. Если вдруг Вы создадите шедевры в этом жанре — пожалуйста, ссылайтесь на Cognitive People Blending.

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

React-admin и django rest framework

Время на прочтение2 мин
Охват и читатели12K
Наткнувшись недавно на статью о react-admin, я решил попробовать что это за зверь. Было интересно прикрутить это к джанге, благо там есть dataprovider для rest framework.
Читать дальше →

9 лучших опенсорс находок за ноябрь 2019

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

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


За полным списком новых полезных инструментов, статей и докладов можно обратиться в мой телеграм канал @OpensourceFindings (по ссылке зеркало, если не открывается оригинал).


В сегодняшнем выпуске.
Технологии внутри: Rust, TypeScript, JavaScript, Go, Python.
Тематика: веб разработка, инструменты для QA, работа с данными, инструменты разработчика и администратора.


Прошлый выпуск.

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

Почему Вы должны попробовать FastAPI?

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

image Лого взято из Github репозитория FastAPI


FastAPI — относительно новый веб-фреймворк, написанный на языке программирования Python для создания REST (а если сильно постараться то и GraphQL) API, основанный на новых возможностях Python 3.6+, таких как: подсказки типов (type-hints), нативная асинхронность (asyncio). Помимо всего прочего, FastAPI плотно интегрируется с OpenAPI-schema и автоматически генерирует документацию для вашего API посредством Swagger и ReDoc


FastAPI построен на базе Starlette и Pydantic.
StarletteASGI микро-фреймворк для написания веб-приложений.
Pydantic — библиотека для парсинга и валидации данных основанная на Python type-hints.

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

Расстояние Левенштейна и поиск контролёров

Время на прочтение9 мин
Охват и читатели5.7K
Наверное, в каждом городе Беларуси, где есть троллейбусы, существуют группы ВК или чаты в Telegram, в которых люди отслеживают местоположение контролёров. В основном это делается для того, чтобы не оплатить проезд и проехать бесплатно, хотя в описании групп почти всегда есть постскриптум “Платите за проезд”.
Читать дальше →

Эффективные и не эффективные методы кодинга на Python

Время на прочтение7 мин
Охват и читатели29K
Привет, Хабр! Предлагаю Вашему вниманию перевод статьи Good and Bad Practices of Coding in Python автора Duomly.

Python – высокоуровневый язык программирования, акцентирующий внимание на удобочитаемости. Он разрабатывается, поддерживается и часто используется в соответствии с The Zen of Python или PEP 20.

В этой статье показано несколько примеров хороших и плохих методов кодинга в Python, с которыми вы, вероятно, столкнетесь.
Читать дальше →

Как дата-сайентист машину покупал

Время на прочтение6 мин
Охват и читатели32K
После многих лет жизни и работы в Нидерландах мне с семьёй пришло время возвращаться в Штаты и менять велосипеды на автомобили.



В Америке очень сложно жить без машины, и, так как мы наши машины продали перед переездом, теперь нам надо было купить новое семейное средство передвижения. Я решил подойти к решению этой задачи так, как подошёл бы любой хороший специалист по обработке и анализу данных. Я решил воспользоваться данными.
Читать дальше →

«Ты узнаешь ее из тысячи...» или классифицируем изображения с веб-камеры в реальном времени с помощью PyTorch

Время на прочтение21 мин
Охват и читатели50K
Вот бывает же в жизни такое. Сидишь себе не шалишь, никого не трогаешь, починяешь примус, а тут из этого примуса, из телевизора, да и вообще из каждого утюга, до тебя доносится: «нейронные сети, глубокое обучение, искусственный интеллект, цифровая экономика…».

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

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

Вам интересно сможет ли наш классификатор отличить Arduino-совместимые контроллеры от малины? Тогда милости прошу под кат.


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

Мультифункциональный фиттинг экспериментальных данных

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

Введение


Очень часто, как и в точных науках (физика, химия), так и в прочих областях (экономика, социология, маркетинг и пр.) при работе с разного рода экспериментально полученными зависимостями одной величины (Y) от другой (X) возникает потребность описать полученные данные какой-нибудь математической функцией. Этот процесс часто называют экспрессией, аппроксимацией, приближением или фиттингом.


Наиболее часто для фиттинга данных используется линейная функция:

$Y(x) = Ax + B.$


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

Schemathesis: property-based тестирование для API схем

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

image


Фото Chris Keats на Unsplash


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


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


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

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

Поиски «идеального» GUI. Путь новичка

Время на прочтение3 мин
Охват и читатели13K
Изучая первый язык я хотел видеть кнопочки, а не только текст в консоли. Я сделал на Python3+tkinter калькулятор. Это заняло 585 строк. Применив к коду магию py2app, я получил bundle размером 45MB. Мне не понравилась работать с py2app. Иногда все переставало работать, если использовались сторонние библиотеки, а иногда я исправлял код py2app. Из-за этого я думал, что standalone-приложения делать очень сложно.

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

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

Профессиональное сообщество Facebook Developer Circle: Moscow запускает серию событий по ML & AI

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


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

Этим митапом сообщество Facebook Developer Circle: Moscow открывает серию событий в области Machine Learning & Artificial Intelligence, чтобы инженеры данной области могли все чаще встречаться, делиться своим опытом и результатами работы, учиться друг у друга чему-то новому.

В ходе технических выступлений своими знаниями с вами поделятся инженеры таких компаний как Catalyst, Yandex, Kaspersky Lab и Rambler Group. Программа мероприятия состоит из четырех выступлений, из которых вы узнаете, каковы особенности использования машинного обучения в крупных проектах, и как развить свои навыки для эффективного использования в собственных проектах.

Митап состоится пятого декабря в офисе Rambler Group, который расположен по адресу: Москва, Варшавское шоссе 9, строение 1, вход 5 (БЦ Даниловская мануфактура, Ряды Солдатенкова). Количество мест ограничено, для участия необходимо зарегистрироваться ЗДЕСЬ.
Читать дальше →

Автоматизация задач администрирования API VMware vSphere с использованием Python

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

В нашей компании активно используется платформа для виртуализации VMware vSphere. В ней живут тестовые среды продуктов, демонстрационные стенды, эмуляторы различных инфраструктур заказчиков и прочие не менее важные «виртуалки». Несмотря на достаточную мощность нашей инфраструктуры, доступ большого числа человек к управлению виртуальными машинами постоянно приводит к конфликтам и снижению производительности фермы. Разделение пулов между отделами (инженерами, тестировщиками, сейлами и разработчиками) проблему до конца не решает, поэтому периодически приходится разбираться, кто всем мешает и кто съел все ресурсы. При количестве виртуальных машин далеко за сотню сделать это вручную бывает проблематично, поэтому мы научились использовать API. VMware vSphere имеет довольно богатое API, которое незаслуженно слабо освещено на Хабре, хотя прикладная область применения довольна широка.

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

Декодер кириллицы из quoted-printable

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

Доброго времени суток, друзья! Нашел себе занимательную задачку на ближайшее время, решил написать "звонилку" для Android. Приложение будет синхронизироваться с контактами в системе и выполнять определенные действия. При чем здесь quoted-printable, что это и зачем мне понадобилось — рассказываю в статье.

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

Ситуация: поддержку Python 2.7 прекращают с 2020 года

Время на прочтение3 мин
Охват и читатели16K
Поддержку Python 2.7 прекращают уже первого января. Но многие компании до сих пор не перешли на его обновленную версию. В материале — обсуждаем причины сложившейся ситуации.

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

Как уменьшить использование памяти и ускорить работу кода на Python с помощью генераторов

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

Всем привет. Сегодня хотим поделиться одним полезным переводом, подготовленным в преддверии запуска курса «Web-разработчик на Python». Писать код эффективный по времени и по памяти на Python особенно важно, когда занимаешься созданием Web-приложения, модели машинного обучения или занимаешься тестированием.


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

Как я решал соревнование по машинному обучению data-like

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


Привет, Хабр. Недавно прошло соревнование от Тинькофф и McKinsey. Конкурс проходил в два этапа: первый — отборочный, в kaggle формате, т.е. отсылаешь предсказания — получаешь оценку качества предсказания; побеждает тот, у кого лучше оценка. Второй — онсайт хакатон в Москве, на который проходит топ 20 команд первого этапа. В этой статье я расскажу об отборочном этапе, где мне удалось занять первое место и выиграть макбук. Команда на лидерборде называлась "дети Лёши".


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


Краткое описание соревнования:


Летом в банковском приложении Тинькофф появились stories (как в Instagram). На story можно отреагировать лайком, дизлайком, скипнуть или просмотреть до конца. Задача предсказать реакцию пользователя на story.


Соревнование по большей части табличное, но в самих историях есть текст и картинки.

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

TabPy для работы с данными в ClickHouse из Tableau

Время на прочтение6 мин
Охват и читатели6.1K
Выстраивание коммуникаций между брендами и людьми — то, чем мы в Dentsu Aegis Network занимаемся каждый день, и неотъемлемой частью этой работы является анализ данных. В ряде случаев этот процесс не требует data science (хотя и он у нас есть), тогда мы используем BI платформу Tableau. Ее основная цель — дать нашим сотрудникам и клиентам удобный интерфейс для потребления данных без написания скриптов, SQL запросов и т.п.

В этой статье мы расскажем, как нам удалось решить проблему взаимодействия Tableau с ClickHouse.
Читать дальше →