Найти в Дзене
Python для школьников

Pymorphy: Как заставить Python понимать русский язык

Представьте, что ваш код вдруг ожил и начал разбираться в тонкостях
русского языка. "Кошками" - это кто? Что? Какой падеж? Множественное
число? Вот тут-то на сцену выходит Pymorphy2 - ваш личный лингвист в
мире Python. Зачем это вообще нужно? Допустим, вы пишете: Без морфологического анализатора ваш код будет как иностранец, который заучил слова, но не понимает грамматики. Это как волшебная палочка: превращаем
любое слово в его словарную форму. "Бежал" → "бежать", "красивее" →
"красивый", "слонами" → "слон". Иногда
анализатор ошибается с редкими словами или новыми заимствованиями.
Например, "биткоину" может определить как "биткоин" (существительное), а
не как валюта. Но для 95% случаев точности хватает с головой. Pymorphy2 умеет "притворяться" разными словарями. Хотите советскую нормативную грамматику или современную разговорную? Легко! Pymorphy2 - это как умный помощник для любого проекта с русским языком. Не нужно изобретать велосипед - берите и используйте! Ваш код скажет ва
Оглавление

Представьте, что ваш код вдруг ожил и начал разбираться в тонкостях
русского языка. "Кошками" - это кто? Что? Какой падеж? Множественное
число? Вот тут-то на сцену выходит Pymorphy2 - ваш личный лингвист в
мире Python.

Зачем это вообще нужно?

Допустим, вы пишете:

  • Чат-бота, который должен понимать "хочу пиццу", "хочу пиццы" и "закажи пиццу" как одно и то же
  • Поисковик, где люди ищут "кот", "кота" или "коты", а находить нужно всё про котов
  • Анализатор отзывов, который определяет, что "ужасный" и "ужасно" — это негатив

Без морфологического анализатора ваш код будет как иностранец, который заучил слова, но не понимает грамматики.

"Магия" в трёх строчках кода

-2

Это как волшебная палочка: превращаем
любое слово в его словарную форму. "Бежал" → "бежать", "красивее" →
"красивый", "слонами" → "слон".

Еще примеры

Умный поиск:

-3

Склонение по падежам:

-4

Определяем часть речи:

-5

Почему разработчики любят Pymorphy2?

  • Работает из коробки -установил (pip install pymorphy2) и сразу пользуешься
  • Быстрый - не нужно ходить в интернет за ответами, всё работает локально
  • Понимает даже странные слова - "криптокошельками" тоже разберёт!

Ограничения (будем честными)

Иногда
анализатор ошибается с редкими словами или новыми заимствованиями.
Например, "биткоину" может определить как "биткоин" (существительное), а
не как валюта. Но для 95% случаев точности хватает с головой.

Фишка, о которой мало кто знает

Pymorphy2 умеет "притворяться" разными словарями. Хотите советскую нормативную грамматику или современную разговорную? Легко!

-6

Итог

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