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.1.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.1-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: odianumerals-1.0.1.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.1.tar.gz
Algorithm Hash digest
SHA256 a78b0e1b7ce7f51d0f34d3f3d831589800bd1fc88e12564f14b676d4a271f644
MD5 db00eb22b2bab563626ab246ffc6abf8
BLAKE2b-256 77b5223cbd91a505a06bc3670baf5fa1cdc3f8fdc56585145e8969375882b632

See more details on using hashes here.

File details

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

File metadata

  • Download URL: odianumerals-1.0.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e5de371f2ecb391976a8c3884c2260642bf33241123cc893b71309dd5b6005d9
MD5 635a327c932cf0e335e937e0984671f2
BLAKE2b-256 5401831535ef1e5c1abde0db1942ef5eaf8e43c243bb3cd8482ba7db8cec1629

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