Omninumeric
Omninumeric provides support for number reading and writing in alphabetic numeral systems.
Supported numeral systems
- Cyrillic
- Roman - WIP
- Byzantian Greek - WIP
- Modern Greek - planned
- Hebrew - planned
Background
See Introduction to learn about Cyrillic numeral system.
Installation
pip install omninumeric
Usage
from omninumeric import cyrillic
# Convert a number into Cyrillic
# Requires non-zero int, returns str
a = cyrillic.write(1)
# Convert a Cyrillic number to Arabic
# Requires non-empty str, returns int
b = cyrillic.read("а҃")
"Delimiter" and "plain" style numbers are supported both for reading and writing, "plain" style is used by default for writing.
When writing into Cyrillic, several falgs can be used:
# DELIM flag sets conversion to "delimeter" style
c = cyrillic.write(111111, cyrillic.DELIM)
# NOTITLO flag omits "titlo" decorator
d = cyrillic.write(11000, cyrillic.DELIM | cyrillic.NOTITLO)
# Following flags control dot styling:
#
# ENDDOT - append dot at the end
# WRAPDOT - append dot at both ends
# DELIMDOT - add dot separator between digit groups. Sets conversion to "delim" style
# ALLDOT - combine WRAPDOT and DELIMDOT
Contributing
Create an issue describing a bug or suggestion, then create a pull request mentioning the issue.
Feedback
Drop me a line: amshoor@gmail.com
Changelog
See Changelog.