Skip to main content

A Python library for declension of personal names in Serbian

Project description

deklinacija

A Python library for declension of personal names in Serbian. The grammatical rules utlized in this library also apply to Croatian and Bosnian.

Installation

The source code is currently hosted on GitHub: https://github.com/urelja/deklinacija

The latest binary versions are hosted on the Python Package Index (PyPI): https://pypi.org/project/deklinacija/

pip install deklinacija

Usage

Simply import the package. It is recommended to set the alias to dek.

import deklinacija as dek

As of right now, only first names are supported. To decline names, all you have to do is to call the appropriate function for the grammatical case you want to use, and specify the name and the gender parameter. There is also the third latin parameter, which indicates whether the provided name parameter is written in the Cyrillic or Latin script. Currently, only the Latin script is supported.

The functions in this example return a string.

import deklinacija as dek

genitiv = dek.genitiv("Velja","male") #Velje
dativ = dek.dativ("Petar","male") #Petru
akuzativ = dek.akuzativ("Jana","female") #Janu
vokativ = dek.vokativ("Predrag","male") #Predraže
instrumental = dek.instrumental("Uroš","male") #Urošem
instrumental2 = dek.instrumental("Vuk","male") #Vukom
lokativ = dek.lokativ("Lana","female") #Lani

print(f"Zdravo, {vokativ}! Dobio si zahtev za prijateljstvo od {genitiv}.") 
#Zdravo Predraže! Dobio si zahtev za prijateljstvo od Velje.
#Translation: Hello Predrag! You have received a friend request from Velja.

You can also immediatelly decline a name through all grammatical cases by calling the declineAll() function.

The declineAll() function returns a dictionary.

import deklinacija as dek

Nikola = dek.declineAll("Nikola","male") 
#{'nominativ': 'Nikola', 'genitiv': 'Nikole', 'dativ': 'Nikoli', 'akuzativ': 'Nikolu', 
#'vokativ':'Nikola', 'instrumental': 'Nikolom', 'lokativ': 'Nikoli'}

print("Dali ste poklon",Nikola['dativ']) 
#Dali ste poklon Nikoli
#Translation: You have given a gift to Nikola

Todo

The following features are on the roadmap:

  • Support for both Latin and Cyrillic scripts
  • Declension of last names

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deklinacija-1.0.0.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

deklinacija-1.0.0-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file deklinacija-1.0.0.tar.gz.

File metadata

  • Download URL: deklinacija-1.0.0.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.2

File hashes

Hashes for deklinacija-1.0.0.tar.gz
Algorithm Hash digest
SHA256 9e3f7cffda7cb509b28d82aa0b053dfda761bab2fa7e3293026d40f57d52f641
MD5 2bf2b8b47657460672561a051e0be6f2
BLAKE2b-256 140987ec36c80099b0f312ef08aed9aed796255fd247e8762b1646fdca8af97c

See more details on using hashes here.

File details

Details for the file deklinacija-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: deklinacija-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 7.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.2

File hashes

Hashes for deklinacija-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d4353b249873c8ad332bb7b57089d15f30d3118697dccee6b538e47b2e6c54ce
MD5 00e62930bd6a507dd713c2cdae88078b
BLAKE2b-256 d9e0df504b5bbd558d763552de022d3fbbdc184c18a48cf892513da2aa1f4764

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page