Все потоки
Поиск
Написать публикацию
Обновить
436.42

Python *

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

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

Yappa: запускаем python web-приложения. Просто. Бессерверно. В Яндекс Облаке

Время на прочтение4 мин
Количество просмотров12K

$ yappa deploy

Все. 

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

Читать далее

Программа PyCon Russia: чем живет python-сообщество в 2021

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

8-й по счету PyCon Russia пройдет 5-6 сентября в Клязьма Резорт. Как всегда, встречаемся старой и новой тусовкой питонистов, отдыхаем на природе, поем песни под гитару и пиво, слушаем, какие проекты и как пилят в разных компаниях, и прокачиваемся на мастер-классах.

В этом году программу разделили на 2 тематики: разработка на python и ML& Data Science. 

Смотрите, чем живет и куда двигается python-сообщество.

Читать далее

Как написать Viber чат-бота, работающего с АСУ ТП на базе ПЛК Siemens

Время на прочтение7 мин
Количество просмотров7.8K

Как создать Viber чат-бота на Python для диспетчеризации технологического процесса.

Читать далее

Машинное обучение в Excel при помощи Python и PyXLL

Время на прочтение9 мин
Количество просмотров18K

К старту курса о машинном и глубоком обучении делимся переводом статьи, автор которой показывает на практике, как модель машинного обучения может использоваться через Excel. Зачем это нужно? Компании больше и больше вкладывают в исследования и разработку моделей прогнозов; по мнению автора оригинала статьи, разработчика и основателя компании PyXLL доступ к ML-моделям через Excel открывает новые горизонты. Вы сможете показать модель пользователям Excel, у которых нет опыта программирования или широких знаний в области статистики. При желании можно создавать инструменты разработки и тренировки моделей полностью в Excel, например строить графы в TensorFlow. Весь исходный код из статьи доступен на GitHub.

Читать далее

Python кодогенерация на благо ETL

Время на прочтение4 мин
Количество просмотров5.6K

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

Если описывать все необходимые преобразования императивно, то можно довольно скоро загрустить. Можно постараться и сделать всё декларативно, скажем, в виде некоторых dict-ов, в которых задать правила (функции?) по работе с каждым отдельным полем. Но уже на этом этапе появляется несколько проблем (поговорим о них ниже).

Альтернатива: в функциональном стиле динамически задаются конверсии, из них строятся pipeline-ы, далее конверсии генерируют ad-hoc код функций, реализующих заданное преобразование, используя библиотеку convtools.

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

Читать далее

Генератор абсурда за пять минут с NLTK и TreeTagger

Время на прочтение7 мин
Количество просмотров6.3K


Этот текст, при его очевидной абсурдности и лишённости смысла, мог показаться вам смутно знакомым. Это начало поэмы «Москва – Петушки», в котором слова, принадлежащие одной части речи, перемешаны между собой в случайном порядке.

Насколько сложно в наш век всеобщего проникновения машинного обучения и NLP набросать такую игрушку? О, это очень легко.
Читать дальше →

Классификатор обращений пользователей (1C + python)

Время на прочтение8 мин
Количество просмотров5.3K

1. Описание задачи

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

Читать далее

Redis Python based cluster. Часть 2: зачем нужен Dynamo и что делать, когда Redis больше одного

Время на прочтение8 мин
Количество просмотров2.2K
Рано или поздно сервисы растут, а с большим RPS приходит Highload.

Что делать, когда ресурсов для вертикального масштабирования Redis уже нет, а данных меньше не становится? Как решить эту задачу без downtime и стоит ли её решать с помощью redis-cluster?

На воркшопе Redis Python based cluster Савва Демиденко и Илья Сильченков пробежались по теории алгоритмов консенсуса и попробовали в реальном времени показать, как можно решить проблему с данными, воспользовавшись sharding’ом, который уже входит в redis-cluster.


Воркшоп растянулся на два часа. Внутри этого поста — сокращённая расшифровка самых важных мыслей.

В предыдущем посте Савва Демиденко и Илья Сильченков обсудили теорию, поговорили, как и для чего используется Redis, выделили особенности распределённых систем, а также теоремы CAP и PACELC. Теперь узнаем, зачем нужен Dynamo, что делать, когда Redis больше одного, а также ответим на вопросы зрителей.

DataScience Digest — 22.07.21

Время на прочтение2 мин
Количество просмотров1.2K

Встречайте свежий выпуск дайджеста полезных материалов из мира Data Science & Machine Learning подготовленный командой Data Phoenix и не забывайте подписываться на наш Telegram-канал.

Читать далее

Автоматический анализ документов

Время на прочтение6 мин
Количество просмотров15K

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

Читать далее

Не суйте свой Pydantic в мое Django

Время на прочтение8 мин
Количество просмотров27K
image

Было замечательное теплое австрийское утро, и ничего не предвещало … ничего, пока мой коллега не порекомендовал мне посмотреть запись недавно прошедшей Pyconf.

Там кто-то рассказывал, как при помощи желтого скотча, такой-то матери и усилий любимых разработчиков они наконец-то допилили Django Rest Framework до состояния франкенштейна подходящего его компании. Презентация выглядела странно, может я и прошел бы мимо, но моменты упоминания докладчиком PYDANTIC вызвали у меня явные сомнения в нормальности происходящего.

Оставим получившегося фRESTенштейна для другой статьи, и поразмышляем только о прозвучавшей в докладе возможности использования PYDANTIC в экосистеме Django — DRF.
Читать дальше →

Уходим с Mercurial на Git

Время на прочтение3 мин
Количество просмотров11K
Кадр из фильма «Красный шар». Режиссер Альбер Ламорис. 1956 год

Так уж случилось, что у меня остался ряд репозиториев на Mercurial, которые захостил на Bitbucket много лет назад. Проекты перешли в полуархивное состояние, поэтому заглядывал в них не так уж и часто. И тут я решил обратиться к материалам, надо было внести правку. С удивлением обнаружил, что репозиториев на битбакете нет, но есть публикация «Sunsetting Mercurial support in Bitbucket».

Не критично, локальные репозитории сохранились же (а там коммитов за 10+ лет). Попробуем переехать на github/gitlab по инструкции из статьи. И, конечно же, эти инструкции работают только с latin-1, русские буквы либо не дают переехать, либо заменяются на ?. Извечная проблема кодировок. Можно ли что-то сделать?

UPDATE по результатам комментариев.
Для «приземления» задачи рассмотрите контекст коммерческой поддержки большой инсталляции ПО, созданного в компании где вы сейчас работаете, которое n лет уже не развивается (выпустили совсем новую ветку), но обязательства по поддержке остались по проданным ранее контрактам. И периодически всплывают баги.

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

Streamlit. Поиск кратчайшего пути

Время на прочтение3 мин
Количество просмотров36K

Самое длинное приключение начинается со слов «Я знаю короткую дорогу».

Интересно о чем это? Читай дальше!

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

Redis Python based cluster. Часть 1: распределённые системы, теоремы CAP и PACELC и зачем нужен Redis

Время на прочтение9 мин
Количество просмотров9.9K
Рано или поздно сервисы растут, а с большим RPS приходит Highload.

Что делать, когда ресурсов для вертикального масштабирования Redis уже нет, а данных меньше не становится? Как решить эту задачу без downtime и стоит ли её решать с помощью redis-cluster?

На воркшопе Redis Python based cluster Савва Демиденко и Илья Сильченков пробежались по теории алгоритмов консенсуса и попробовали в реальном времени показать, как можно решить проблему с данными, воспользовавшись sharding’ом, который уже входит в redis-cluster.

Воркшоп растянулся на два часа. Внутри этого поста — сокращённая расшифровка самых важных мыслей.

Введение


Немного о тех, кто провёл воркшоп, и почему вообще его решили провести.

Савва Демиденко

Занимаюсь разработкой в Avito, делаю программу курса «Мидл Python-разработчик» от Яндекс.Практикума. Закончил Бауманку и Технопарк. Разрабатываю на Python и Golang. Люблю решать архитектурные задачи в веб-программировании.

Илья Сильченков

Тимлид в «Сбермаркете» и наставник на курсе «Мидл Python-разработчик». Успел побыть фронтендером и дата-инженером, но остановился на бэкенде. Сейчас пишу на Python и Go.

В рамках нашего курса в «Яндекс.Практикуме» в течение шести месяцев мы делаем онлайн-кинотеатр из множества микросервисов. Сначала пишем маленькую ETL из Elasticsearch и Flask, потом — админку и асинхронное API, авторизацию/аутентификацию и систему уведомлений. В том числе есть маленькая продуктовая задача — пиар в социальных сетях.

Как подружить django и vue.js

Время на прочтение4 мин
Количество просмотров25K

Небольшой тутор о том, как передать данные из бэка на django на vue и как с помощью django сёрвить этот самый vue.

Читать далее

Алгоритмы сортировки NumPy (и танцы, и мемы)

Время на прочтение5 мин
Количество просмотров7.1K

Вместо предисловия:

Да, наверное, нет более избитой темы, чем алгоритмы сортировки. Однако, меня в свое время так увлек процесс разбора того, какие алгоритмы задействованы в NumPy, что захотелось всем об этом рассказать. Возможно, слишком мелкая вещь, возможно, занудство какое-то, но тешу себя надеждой, что материал может быть полезным для тех, кто тему только начал! Особенно для таких же людей, как я, перешедших из смежных сфер (из телекома, например), где алгоритмы и структуры данных могут попросту не изучаться (бывает и такое). Если где-то что-то напутал (или наоборот материал оказался для вас полезным), буду рад обратной связи!

Читать далее

Делаем простого бота в Telegram на Python. Интеграция с Excel

Время на прочтение9 мин
Количество просмотров74K

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

Читать далее

Почему стоит научиться «парсить» сайты, или как написать свой первый парсер на Python

Время на прочтение3 мин
Количество просмотров204K

В этой статье я постараюсь понятно рассказать о парсинге данных и его нюансах.



image

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

Перейдем к этапам парсинга.

  • Поиск данных
  • Извлечение информации
  • Сохранение данных

И так, рассмотрим первый этап парсинга — Поиск данных.


Так как нужно парсить что-то полезное и интересное давайте попробуем спарсить информацию с сайта work.ua.
Для начала работы, установим 3 библиотеки Python.

pip install beautifulsoup4

Без цифры 4 вы ставите старый BS3, который работает только под Python(2.х).

pip install requests
pip install pandas


Теперь с помощью этих трех библиотек Python, можно проанализировать нашу веб-страницу.

Второй этап парсинга — Извлечение информации.


Попробуем получить структуру html-кода нашего сайта.
Давайте подключим наши новые библиотеки.

import requests
from bs4 import BeautifulSoup as bs
import pandas as pd

И сделаем наш первый get-запрос.

URL_TEMPLATE = "https://www.work.ua/ru/jobs-odesa/?page=2"
r = requests.get(URL_TEMPLATE)
print(r.status_code)

Статус 200 состояния HTTP — означает, что мы получили положительный ответ от сервера. Прекрасно, теперь получим код странички.

print(r.text)

Получилось очень много, правда? Давайте попробуем получить названия вакансий на этой страничке. Для этого посмотрим в каком элементе html-кода хранится эта информация.

<h2 class="add-bottom-sm"><a href="/ru/jobs/3682040/" title="Комірник, вакансия от 5 ноября 2019">Комірник</a></h2>


У нас есть тег h2 с классом «add-bottom-sm», внутри которого содержится тег a. Отлично, теперь получим title элемента a.
Читать дальше →

Модели глубоких нейронных сетей sequence-to-sequence на PyTorch (Часть 6)

Время на прочтение25 мин
Количество просмотров7K

В этом разделе мы будем реализовывать (слегка измененную версию) модели Transformer из статьи Attention is All You Need. Подобно свёрточной модели Sequence-to-Sequence, Transformer не использует никакой рекуррентности. Он также не использует свёрточные слои. Вместо этого модель полностью состоит из линейных слоев, механизмов внимания и нормализации.

Читать далее

Обзор Databrick. Что облачный продукт может дать начинающим специалистам

Время на прочтение5 мин
Количество просмотров22K

Добрый день, уважаемые читатели! Данная публикация посвящена Databricks и она получилась не совсем обычный по двум причинам.

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

Во-вторых, чтобы обзор продукта был максимально комплексным и технически взвешенным я с самого начала планировал написать материал в соавторстве с инженером данных и специалистом в сфере data science. В таком случае была бы возможность донести до читателей концепцию Delta Lake и рассказать о нюансах машинного обучения. Но предложение не нашло отклика в сердцах коллег по цеху, поэтому итоговый результат получился в стиле: “Я художник - я так вижу!”) Это была преамбула, а теперь настало время познакомиться поближе с Databricks.

Читать далее

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