Skip to main content

A comprehensive library for Odia numeral processing and linguistic conversion.

Project description

odianumerals

odianumerals is a linguistically accurate and extensible Python library for working with Odia numerals and number expressions.
It supports modern and classical Odia numbering systems, currency representation, ordinals, and natural-language mathematical expressions.

Built with a strong focus on Indian numbering conventions and Odia linguistic correctness, this library is suitable for NLP, education, localization, and digital humanities projects.


🚀 Features

  • Digit Conversion

    • English ↔ Odia digit transformation
    • Decimal and formatted numeric support
  • Number to Words (Odia)

    • Integer and decimal conversion
    • Indian scale: Thousand, Lakh, Crore
    • Grammatically accurate Odia word formation
  • Number to Words (English – Indian System)

    • English number words using Lakh/Crore grouping
  • Classical Barnabodha System

    • Traditional Odia large-number units
      (Ayuta, Niyuta, Koti, Arbuda, etc.)
  • Ordinal Numbers

    • Ordinal numerals: 1 → ୧ମ, 2 → ୨ୟ
    • Ordinal words: 1st → ପ୍ରଥମ, 2nd → ଦ୍ୱିତୀୟ
  • Currency Representation

    • Tanka–Paisa conversion
    • Accurate fractional handling
  • Mathematical Expressions

    • Human-readable Odia sentences for arithmetic operations
  • NLP Utilities

    • Detect, replace, and normalize numerals inside text blocks

📦 Installation

pip install odianumerals

🛠 Usage Examples

Digit Conversion and Cardinal Words

import odianumerals as odi

odi.to_odia_digits(1234.50)
# ୧୨୩୪.୫୦

odi.to_odia_words(150000)
# ଏକ ଲକ୍ଷ ପଚାଶ ହଜାର

Ordinals and Currency

odi.to_ordinal_numeral(1, lang="or")
# ୧ମ

odi.to_ordinal_words(2, lang="or")
# ଦ୍ୱିତୀୟ

odi.to_odia_currency(105.75)
# ଏକ ଶହ ପାଞ୍ଚ ଟଙ୍କା ସତୁରୀ ପଇସା

Mathematical Expressions

odi.calculate_and_express(10, "+", 5)

# ଦଶ ମିଶାଣ ପାଞ୍ଚ ସମାନ ପନ୍ଦର

🎯 Use Cases

  • Odia NLP and text normalization
  • Educational and e-learning platforms
  • Financial and government localization
  • Digital humanities research
  • Voice assistants and TTS pipelines

✍️ Author

Srinibash Samal
A dedicated tool for Odia Language Technology.

🤝 Contributing

Contributions are welcome and encouraged.

🗺️ Roadmap

  • Enhanced decimal pronunciation rules
  • Pluralization support
  • Text-to-speech friendly output
  • Expanded Barnabodha unit coverage
  • Integration helpers for NLP pipelines

📜 License

This project is released under an open-source license to promote Odia language computing and digital accessibility.

Made with ❤️ for the Odia language

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

odianumerals-1.0.0.tar.gz (18.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

odianumerals-1.0.0-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: odianumerals-1.0.0.tar.gz
  • Upload date:
  • Size: 18.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for odianumerals-1.0.0.tar.gz
Algorithm Hash digest
SHA256 3781ba87f0cd5c7b4c2fbc10da1072254fda5821769c09883ea77a1eb4c7b81a
MD5 e458ae962d81c62eb32d19619776c127
BLAKE2b-256 ade492e7dd99e31cba8d5ece353b0d925e8f248aede5b2e78d2a916ef3cee6c8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: odianumerals-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 22.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for odianumerals-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e9f858fac80ef6666931539aea24ee622f17949c3913b9797249eb7f9edf25ae
MD5 cf2fa93f43eef6ce03472b1c2ec553b7
BLAKE2b-256 e576a8324853311342cdaaf530a7a8a264876f1612118d05e04b874da341dc5c

See more details on using hashes here.

Supported by

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