🌏 English Русский
Omninumeric provides support for number reading and writing in alphabetic numeral systems.
- Cyrillic
- Roman - numbers up to 3999
- Byzantian Greek - WIP
- Modern Greek - planned
- Hebrew - planned
See Introduction to learn about Cyrillic numeral system.
pip install omninumeric
# Convert a number into Roman numeral system
# Requires non-zero int, returns str
from omninumeric import roman
a = roman.write(1)
# Convert a Cyrillic number to Arabic numeral system
# Requires non-empty str, returns int
from omninumeric import cyrillic
b = cyrillic.read("а҃")
For Greek-type numeral systems, "Delimiter" and "plain" style numbers are supported both for reading and writing. "Plain" style is used by default for writing.
For Cyrillic numeral system, several falgs can be used for writing:
# 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
Create an issue describing a bug or suggestion, then create a pull request mentioning the issue.
Drop me a line: amshoor@gmail.com
See Changelog.