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

Uploaded Python 3

File details

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

File metadata

  • Download URL: odianumerals-1.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 ae309ba7732cf22c3ed1a2f984757d3d56092dece8a92bc5cab35b3f7b243247
MD5 7b8a279b3991ff6503cf1db6988994b7
BLAKE2b-256 a9f7429f6675b1cff04594f33cf4fb7590a8aab47ffe7557681e54280b0c2487

See more details on using hashes here.

File details

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

File metadata

  • Download URL: odianumerals-1.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4365534c740c087002c0038687a4a38a8c909c99e528a9be8a91daaaabb7f6da
MD5 1d488f0d018285fbea4f6d6a9a92a780
BLAKE2b-256 9fdb8249e0752e5b1a82af61965e7569e0aeb60eb3a3eb384624fde74878368a

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