skillfed

roman-numerals-py

This package is deprecated, switch to roman-numerals.

roman-numerals-py v4.1.0 2.5M downloads/30d#3,033 on PyPI5
Permissive license 0BSD OR CC0-1.0 Active released

What it is and what it does

roman-numerals-py is a utility for bidirectional conversion between integers and Roman numerals. It lets you create a RomanNumeral object from an integer (e.g., 16 becomes 'XVI') and parse Roman numeral strings back into comparable objects. The package is a pure Python implementation with no compiled dependencies, making it straightforward to install and use.

However, the package summary explicitly states it is deprecated and recommends switching to roman-numerals instead. This means you should treat it as a legacy option; if you are starting a new project, the maintainers suggest using the replacement package. For existing code or specific compatibility needs, it remains functional and actively maintained, but migration is encouraged.

Use it for:

  • Convert integers to Roman numeral strings for display in historical or formal documents.
  • Parse user-supplied Roman numeral input and validate or compare it against numeric values.
  • Generate Roman numerals for outline numbering, clock faces, or other traditional formatting.
  • Educational projects teaching numeral systems or number representation.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Converts between integers and Roman numerals, parsing strings like 'XVI' to numbers and vice versa.

No—the package is explicitly deprecated. The maintainers recommend switching to roman-numerals instead. Install only if you are maintaining legacy code that already depends on roman-numerals-py; for new projects, use the recommended replacement.

Install

roman-numerals-py on PyPI

pip

pip install roman-numerals-py

uv

uv add roman-numerals-py

poetry

poetry add roman-numerals-py

Installing roman-numerals-py

Before you install

Low friction installation as a pure Python wheel. Active maintenance with recent releases, though the package summary notes it is deprecated in favor of roman-numerals.

License in practice

Dual-licensed under 0BSD or CC0-1.0, both permissive; you may use, modify, and distribute freely with minimal restrictions.

Quickstart

pip install roman-numerals-py

from roman_numerals import RomanNumeral

num = RomanNumeral(16)
print(num)  # XVI
assert RomanNumeral.from_string("XVI") == num

Requires Python 3.10 or later.

Verify before relying

  • Whether roman-numerals (the recommended replacement) offers materially different or improved functionality.
  • Whether the deprecation notice means this package will stop receiving updates or support.

Package facts

License 0BSD OR CC0-1.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 1 — roman-numerals
Maintenance actively maintained — 240 days since the last release
Last repo commit
First released
Downloads 2,511,864/month — #3,033 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: roman_numerals_py-4.1.0-py3-none-any.whl

Tags

roman numeral conversioninteger to roman numeralparse roman numeralsXVI to numbernumeral formatter
deprecatednumeral-conversion

More Utilities packages