Библиотека для склонения кириллических ФИО по падежам
Project description
Склонение русских имён, фамилий и отчеств по падежам. Порт с ruby библиотеки на python
Версии с поддержкой python 2: 1.* Версии с поддержкой python 3.6+: 2.*
Установка
pip install petrovich==1.0.0
для установки порта с поддержкой python 2.7
pip install petrovich
для установки порта с поддержкой python 3.6+
Описание
Перед использованием модуля требуется создать экземпляр класса Petrovich. В момент инстанцирования производится загрузка файла с правилами
from petrovich.main import Petrovich
p = Petrovich()
Также при инстанцировании есть возможность выполнить загрузку собственного файла с правилами, путем передачи значения через аргумент rules_path
p = Petrovich(rules_path='my/custom/rules/file.json')
Для склонения каждой из частей ФИО используется собственный метод. Это:
firstname
- склонение имениlastname
- склонение фамилииmiddlename
- склонение отчества
Каждый из этих методов принимает по 3 аргумента:
value
- слово для склонения в именительном падежеcase
- падеж для склонения, содержащий значение, представленное в перечисленииpetrovich.enums.Case
gender
- род для склонения, необязательное для заполнения. Если не задать, то будет попытка определить род самостоятельно на основе определенных правил. В ряде случаев возможно ошибочное определение, например для несклоняемых фамилий (Ткач, Бондаренко, и т.д.). Используется значение из перечисленияpetrovich.enums.Gender
.
Пример использования
from petrovich.main import Petrovich
from petrovich.enums import Case, Gender
p = Petrovich()
cased_lname = p.lastname(u'Алексеев', Case.GENITIVE, Gender.MALE)
print cased_lname # > Алексеева
История изменений
2.0.0.
Добавлена поддержка python 3.6+
1.0.0.
Присутствуют изменения с потерей обратной совместимости.
Был удален префикс CASE_
у всех значений перечисления petrovich.enums.Case
.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for Petrovich-2.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d7901a43c6aa3cdedc288eecd0d7e7a061aadb162c7d5d352411c25aec48e288 |
|
MD5 | d92b528799823e249d30c9bef90d1e69 |
|
BLAKE2b-256 | 04b958b45874563e1015925436796235fbaf196947f86d7a441a500e2ea02ef8 |