simple-roman-numbers


Namesimple-roman-numbers JSON
Version 0.1.3 PyPI version JSON
download
home_pagehttps://github.com/digestiveThinking/roman_numbers
SummaryCreate a RomanNumber class to be able to do basic calculations with Roman numerals.
upload_time2024-07-02 14:58:47
maintainerNone
docs_urlNone
authorMon Maldonado
requires_python>=3.6
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ### README.md

# RomanNumber

`RomanNumber` es una clase en Python que permite convertir entre números enteros y números romanos, además de realizar operaciones aritméticas (suma, resta, multiplicación y división) con ellos.

## Tabla de Contenidos

- [Instalación](#instalación)
- [Uso](#uso)
- [Métodos](#métodos)
- [Ejemplos](#ejemplos)
- [Contribución](#contribución)
- [Licencia](#licencia)

## Instalación

```
pip install simple-roman-number
```

## Uso

### Importar la clase

```python
from simple_roman_number import RomanNumber
```

### Crear una instancia de `RomanNumber`

Puedes crear una instancia de `RomanNumber` utilizando un número entero, un número flotante (se toma solo la parte entera) o una cadena de texto que represente un número romano.

```python
# Usar un número entero
roman_number = RomanNumber(1987)

# Usar un número flotante
roman_number_from_float = RomanNumber(1987.9)

# Usar una cadena de texto con un número romano
roman_number_from_literal = RomanNumber("MCMLXXXVII")
```

### Atributos

- `value`: Propiedad que devuelve el valor entero del número.
- `lit`: Propiedad que devuelve la representación romana del número.

### Operaciones aritméticas

La clase `RomanNumber` soporta las siguientes operaciones aritméticas:
- Suma (`+`)
- Resta (`-`)
- Multiplicación (`*`)
- División (`/`)

## Ejemplos

### Convertir de entero a romano

```python
roman_number = RomanNumber(1987)
print(roman_number.lit)  # Imprime: "MCMLXXXVII"
```

### Convertir de romano a entero

```python
roman_number_from_literal = RomanNumber("MCMLXXXVII")
print(roman_number_from_literal.value)  # Imprime: 1987
```

### Operaciones aritméticas

```python
a = RomanNumber(10)
b = RomanNumber(5)

print(a + b)  # Imprime: "XV" (RomanNumber(15))
print(a - b)  # Imprime: "V" (RomanNumber(5))
print(a * b)  # Imprime: "L" (RomanNumber(50))
print(a / b)  # Imprime: "II" (RomanNumber(2))

# También funciona con números normales
print(a + 5)  # Imprime: "XV" (RomanNumber(15))
print(a - 3)  # Imprime: "VII" (RomanNumber(7))
print(a * 2)  # Imprime: "XX" (RomanNumber(20))
print(a / 2)  # Imprime: "V" (RomanNumber(5))
```

### Imprimir la representación romana

```python
roman_number = RomanNumber(1987)
print(roman_number)  # Imprime: "MCMLXXXVII"
```


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/digestiveThinking/roman_numbers",
    "name": "simple-roman-numbers",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": null,
    "author": "Mon Maldonado",
    "author_email": "monterdi@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/fc/4b/59efe975ad430291764fdc9f5a6cc22005ae0a467a25c776c3bd2836d2f4/simple_roman_numbers-0.1.3.tar.gz",
    "platform": null,
    "description": "### README.md\n\n# RomanNumber\n\n`RomanNumber` es una clase en Python que permite convertir entre n\u00fameros enteros y n\u00fameros romanos, adem\u00e1s de realizar operaciones aritm\u00e9ticas (suma, resta, multiplicaci\u00f3n y divisi\u00f3n) con ellos.\n\n## Tabla de Contenidos\n\n- [Instalaci\u00f3n](#instalaci\u00f3n)\n- [Uso](#uso)\n- [M\u00e9todos](#m\u00e9todos)\n- [Ejemplos](#ejemplos)\n- [Contribuci\u00f3n](#contribuci\u00f3n)\n- [Licencia](#licencia)\n\n## Instalaci\u00f3n\n\n```\npip install simple-roman-number\n```\n\n## Uso\n\n### Importar la clase\n\n```python\nfrom simple_roman_number import RomanNumber\n```\n\n### Crear una instancia de `RomanNumber`\n\nPuedes crear una instancia de `RomanNumber` utilizando un n\u00famero entero, un n\u00famero flotante (se toma solo la parte entera) o una cadena de texto que represente un n\u00famero romano.\n\n```python\n# Usar un n\u00famero entero\nroman_number = RomanNumber(1987)\n\n# Usar un n\u00famero flotante\nroman_number_from_float = RomanNumber(1987.9)\n\n# Usar una cadena de texto con un n\u00famero romano\nroman_number_from_literal = RomanNumber(\"MCMLXXXVII\")\n```\n\n### Atributos\n\n- `value`: Propiedad que devuelve el valor entero del n\u00famero.\n- `lit`: Propiedad que devuelve la representaci\u00f3n romana del n\u00famero.\n\n### Operaciones aritm\u00e9ticas\n\nLa clase `RomanNumber` soporta las siguientes operaciones aritm\u00e9ticas:\n- Suma (`+`)\n- Resta (`-`)\n- Multiplicaci\u00f3n (`*`)\n- Divisi\u00f3n (`/`)\n\n## Ejemplos\n\n### Convertir de entero a romano\n\n```python\nroman_number = RomanNumber(1987)\nprint(roman_number.lit)  # Imprime: \"MCMLXXXVII\"\n```\n\n### Convertir de romano a entero\n\n```python\nroman_number_from_literal = RomanNumber(\"MCMLXXXVII\")\nprint(roman_number_from_literal.value)  # Imprime: 1987\n```\n\n### Operaciones aritm\u00e9ticas\n\n```python\na = RomanNumber(10)\nb = RomanNumber(5)\n\nprint(a + b)  # Imprime: \"XV\" (RomanNumber(15))\nprint(a - b)  # Imprime: \"V\" (RomanNumber(5))\nprint(a * b)  # Imprime: \"L\" (RomanNumber(50))\nprint(a / b)  # Imprime: \"II\" (RomanNumber(2))\n\n# Tambi\u00e9n funciona con n\u00fameros normales\nprint(a + 5)  # Imprime: \"XV\" (RomanNumber(15))\nprint(a - 3)  # Imprime: \"VII\" (RomanNumber(7))\nprint(a * 2)  # Imprime: \"XX\" (RomanNumber(20))\nprint(a / 2)  # Imprime: \"V\" (RomanNumber(5))\n```\n\n### Imprimir la representaci\u00f3n romana\n\n```python\nroman_number = RomanNumber(1987)\nprint(roman_number)  # Imprime: \"MCMLXXXVII\"\n```\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Create a RomanNumber class to be able to do basic calculations with Roman numerals.",
    "version": "0.1.3",
    "project_urls": {
        "Homepage": "https://github.com/digestiveThinking/roman_numbers"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fc4b59efe975ad430291764fdc9f5a6cc22005ae0a467a25c776c3bd2836d2f4",
                "md5": "1e91657bff97275bce24f17295cde911",
                "sha256": "e8456b4b195cdb44dede93eeef1486d7ee8b2f24dff3092a88613dac8b9d9e8e"
            },
            "downloads": -1,
            "filename": "simple_roman_numbers-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "1e91657bff97275bce24f17295cde911",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 7051,
            "upload_time": "2024-07-02T14:58:47",
            "upload_time_iso_8601": "2024-07-02T14:58:47.898884Z",
            "url": "https://files.pythonhosted.org/packages/fc/4b/59efe975ad430291764fdc9f5a6cc22005ae0a467a25c776c3bd2836d2f4/simple_roman_numbers-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-02 14:58:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "digestiveThinking",
    "github_project": "roman_numbers",
    "github_not_found": true,
    "lcname": "simple-roman-numbers"
}
        
Elapsed time: 0.78825s