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.2.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

deklinacija-1.0.2-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: deklinacija-1.0.2.tar.gz
  • Upload date:
  • Size: 7.1 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.2.tar.gz
Algorithm Hash digest
SHA256 123ac7a4eaef178aef0be65a245ba6807c680a3ec75e8cf08257915feb548b28
MD5 58bb9f4f4c37922cbff94fd5348f0998
BLAKE2b-256 00a7f30aae10ae7e2d7ebdd194c28f859739e0b4400fd86564e975ce40ff65ec

See more details on using hashes here.

File details

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

File metadata

  • Download URL: deklinacija-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 7.4 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 923601638095b8bf25c9ec6b24d3f49c1254f0e71d669004ddcde53a5b4bd0a5
MD5 84353f6ba2f5e04462ee4b5c0183f822
BLAKE2b-256 264970e2660d12779b90cd3cbb2ad9397e367e4f14e8806473163a7d28225005

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