Обновить
570.52

Python *

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

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

Питон против Безумного Макса, или как я посты на Хабре замораживал

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

Я помню тот старый Хабр. Логотип был похож на комок шерсти после отрыжки кота, я писал какие-то наивные статьи и мне казалось, что я очень крут (нет), а народ пилил годные технические полотна текста, и чтобы узнать инфу про чёрные точки на лице, нужно было посещать другие сайты. Это было прикольно.

Потом что-то пошло не так, начали появляться какие-то полутехнические статьи, и (далее моя интерпретация событий) чтобы сохранить Хабр, всех нетехнических писателей заманили в один корабль и отправили куда подальше на гиктаймс - подобно тому, как врач ампутирует руку пациенту, чтобы спасти жизнь. В данном случае, правда, врач подержал эту руку, посмотрел на неё, а потом пришил обратно. Что из этого вышло?

Что из этого вышло

Алгоритм Дейкстры. Разбор Задач

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


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

Если вы хотите найти ответить на вопросы, чем этот алгоритм лучше BFS (поиска в ширину), при каких условиях алгоритм применим, и какие теоретические и практические задачи можно с его помощью решать, читайте далее.

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

Нормализация SQL profiler трейса для группировки

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

Если вы разбираетесь "почему тормозит база" и у вас есть трейс, созданный MS SQL profiler, то что вы делаете первым делом? Правильно, сохраняете его в таблицу, чтобы поразбираться с ним с помощью родного SQL, а не в GUI.

Очень хотелось бы сделать group by TextData, но увы - так не получится из-за разных параметров у процедур и кверей. А выразительных способностей SQL не хватет, чтобы эффективно 'нормализовать' трейс.

Но ведь можно скрестить ежа и ужа, SQL и Python, и решить задачу в несколько строк! Полезные скрипты ниже.

Читать далее

3 особенности чисел в Python, о которых вы, возможно, не знали

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

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

Но числа в Python — это гораздо больше, чем, собственно, их числовые значения. Поговорим о трёх особенностях чисел в Python, с которыми вы, возможно, не знакомы.

Читать далее

Решаем Wordle с 3,64 попыток в 99,4% случаев

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

Недавно я играл в головоломку Wordle, параллельно думая, как бы её могла решать программа.

[Прим. пер.: Wordle — игра в отгадывание слов, напоминающая «быки и коровы». Правила достаточно ясны по скриншоту выше.]

Первым делом я извлёк списки слов с сайта Wordle. Любопытно, что существует «целевой» список из 2315 слов, которые могут быть ответами, но и дополнительный список из 10657 возможных догадок — вариантов, которые могут вводить пользователи, но которые никогда не будут ответом. Если вам нужны эти списки, то в репозитории ниже есть пара set в формате Python.

Первым делом я подумал, что для управления моей стратегией угадываний стоит использовать частотность букв английского языка. Однако потом я осознал, что есть способ получше: использовать частотность букв в целевом списке! Ведь это самое важное? Никаких мне etaoin shrdlu!
Читать дальше →

Инструменты для решения NER-задач для русского языка

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

Зачастую приходится работать с большими объемами документов, к примеру, исполнительными листами, заявлениями, договорами, из текстов которых нам необходимо извлечь весьма конкретную информацию: ФИО, даты рождения, наименования должности, паспортные данные, адрес, ИНН и наименование компаний, даты подписания документов и так далее. Всё это относится к задаче распознавания именованных сущностей (NER). Какие инструменты могут помочь нам в решении данной задачи для русского языка?

Пожалуй, первое что приходит в голову Data Scientist’у, когда речь идет о NLP или конкретно NER-задачах — это проекты DeepPavlov. Немного углубимся в данную тему, разберем все по порядку.

DeepPavlov — это фреймворк (open source), который помогает в разработке различных голосовых ботов, соответственно, решая различные NLP задачи.

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

Читать далее

Глушим аномалии в географических данных с помощью Pandas

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

При обработке данных исходного DataSet часто попадаются аномальные значения, которые поставлены вместо пропусков, и мало того, что они скрываются, так ещё и несут вред общему делу. В данной статье будет разобран практический пример избавления от аномальных значений в связанных с географией данных при помощи инструментов известной библиотеки Pandas. 

Наведём порядок!

Terality — автоматически масштабируемая альтернатива Pandas

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

К старту флагманского курса по Data Science делимся туториалом по библиотеке Terality, которая сильно облегчит работу с действительно большими наборами данных даже на маломощных машинах. За подробностями приглашаем под кат.

Читать далее

Курс начинающего бэкендера в Metaclass: интервью со студентом

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

Привет!

31-го января начинается новый поток нашей школы Метакласс по курсам начинающего бэкендера и фронтендера.

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

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

Читать

«Раздвижное» решето Эратосфена

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

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

Как искать простые числа? Можно действовать напрямую, применяя определение: просто делить каждое данное число N подряд на все числа m<N.Такая стратегия тоже имеет смысл, и ее можно обсуждать, и даже думать о том, как ее совершенствовать, но сегодня у нас будет другая история.

Читать далее

Кроссплатформенный переключатель прокси-сервера на Python + Qt

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

Устав искать нормальный портативный инструмент для переключения между моим рабочим прокси-сервером и прямым подключением дома (который, к тому же, работал бы на Windows и Linux), я решил-таки запилить собственную тулзу для этих целей. Вооружившись Python и Qt, начал клепать код в VSCode... Что из этого вышло -- читаем под катом.

Читать далее

[Окончание] Новогодний детектив: странный хайзенбаг в «питоньих» часах

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


Здесь лежит окончание "расследования" Новогодний детектив: странный хайзенбаг в «питоньих» часах.
Изначально хотел просто обновить статью и написать соответствующий комментарий, но понял что апдейт выходит чуть не длиннее самой статьи.


Напомню краткое содержание предыдущей части: python, как впрочем и всё на нем написанное, временами прыгает в будущее, а конкретно в 2023-й год в локальной временной зоне, и по некоторым данным в 2024-й в UTC/GMT (но это не точно) и побыв там некоторое время возвращается обратно в настоящее.


Во время прыжка оно ведет себя довольно стабильно (т.е. считает нано-, микро- и миллисекунды, а то и секунды, как будто время идет как ни в чём не бывало) в 2023-м т.е. локально, при том что в результате повторных прыжков время вновь продолжается как будто по возвращению оно (время) течет в какой-то параллельной вселенной. Однако странное его "отражение" в UTC/GMT, ну то что как будто бы в 2024-м, выглядит менее стабильно, ибо для него наблюдается странные дрейфы дополнительно к смещению прыжка.


Хотя куда уж страннее.

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

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

Прогнозирование объема продаж продукции при динамическом ценообразовании

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

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

Читать далее

Пишем свои модули для Ansible на Python

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

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

Материал объёмный. Рекомендуем сразу открыть итоговый код файла clickhouse.py для удобной работы со статьей.

Читать далее

Нейродайджест: главное из области машинного обучения за декабрь 2021

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

Генерация 3D-моделей из текстового описания и видеозаписей, сделанных на обыкновенный смартфон, конкурент DALL-E, ускоренная GAN-инверсия и многое другое в подборке материалов за декабрь, а также небольшие новости о будущем дайджеста.

Перейти к обзору

Сравнение матричной факторизации с трансформерами на наборе данных MovieLens с применением библиотеки pytorch-acceleratd

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

Современный человек много чем занимается в интернете: ходит по магазинам, слушает музыку, читает новости. Все эти задачи подразумевают поиск и выбор того, что ему нужно. При этом важную роль тут играют рекомендательные системы. Они помогают людям не утонуть в многообразии вариантов и увидеть именно то, что им подойдёт, то, что иначе им сложно было бы найти. Предоставление пользователям качественных рекомендаций — это важнейшая часть обеспечения первоклассного уровня удовлетворения клиента. Это — один из самых эффективных способов взращивания лояльности клиентов и повышения ценности продукта или услуги в их глазах. Всё это так важно, что целые бизнес-модели некоторых компаний построены вокруг предоставления их клиентам наилучших рекомендаций, что делает рекомендательные системы важнейшими факторами, влияющими на прибыль подобных компаний! В результате неудивительно то, что клиенты проекта Microsoft CSE часто обращаются к нам с просьбами, касающимися реализации эталонных рекомендательных техник. Один из таких проектов был моим первым опытом в данной сфере.

Читать далее

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

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

Когда речь заходит о тяжелой промышленности и технологиях в ней, в большинстве случаев мы ожидаем услышать Java, а может быть и Java EE, или наоборот что-то очень низкоуровневое. Именно такие предположения я чаще всего слышу от друзей, когда рассказываю, где работаю. Однако, в реальности всё немного иначе и на практике мои коллеги используют множество технологий.

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

Читать далее

Создание MergeField в .docx на Python

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

Доброго времени суток.

Сразу скажу, что я не разработчик. Лишь системный-аналитик в абстактной международной компании. Так что, прошу за код не бить палками.

Цель статьи: если кто-то будет гуглить про встраивание MergeField в docx с помощью Python, то это заняло чуть меньше времени чем у меня.

Читать далее

Ленивый деплой Django проекта UWSGI + NGINX (UBUNTU 20.04)

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

Здравствуйте!

Хочу представить вам пошаговую инструкцию по деплою django проекта.

Сразу скажу, что используя мою краткую инструкцию вы не поймете механику развертывания. По сути, это просто список команд для деплоя. Тут не будет никаких подробностей касательно работы UWSGI, NGINX и самого Django. Я просто помогу быстро добраться до цели, а цель у нас одна - задеплоить уже наконец этот **** проект!

Читать далее

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