Skip to main content

Sobrecarga de métodos y funciones para Python 3.

Project description

Sobrecargar

Hecho por Chaska Versión: 3.0.3 Verisón de Python: 3.12 Licencia: MIT

Descripción

sobrecargar es un módulo de Python que incluye una única clase homonima, la cual provee la implementación de un @decorador universal, que permite definir múltiples versiones de una función o método con diferentes conjuntos de parámetros y tipos. Esto permite crear una sobrecarga de funciones similar a la que se encuentra en otros lenguajes de programación, como C++.

Instalación

Puede decargar e instalar sobrecargar utilizando el manejador de paquetes PIP, según se indica a continuación:

Ejecute el siguiente comando en la terminal:

pip install sobrecargar

Uso Básico

Decorar una función:

Se puede emplear tanto @sobrecargar como @overload para decorar funciones o métodos.

from sobrecargar import sobrecargar

@sobrecargar
def mi_funcion(parametro1: int, parametro2: str):
    # Código de la primera versión de la función
    ...

@sobrecargar
def mi_funcion(parametro1: float):
    # Código de la segunda versión de la función
    ...

Decorar un método de una clase:

[!TIP]
Desde la versión 3.0.2 los métodos (funciones miembro) se sobrecargan de la misma forma que las "funciones libres".

from sobrecargar import overload # 'ovearload' es un alias pre-definido para 'sobrecargar'

class MiClase:
    @overload
    def mi_metodo(self, parametro1: int, parametro2: str):
        # Código de la primera versión del método
        ...

    @overload
    def mi_metodo(self, parametro1: float):
        # Código de la segunda versión del método
        ...

Ejemplo de Uso

Función 'libre'

@overload
def suma(a: int, b: int):
    return a + b

@overload
def suma(a: list[int]):
    return sum([x for x in a])

resultado1 = suma(1, 2)  # Llama a la primera versión de la función suma, con parámetros a y b : int
>> 3

resultado2 = suma([1,2,3,4,5])  # Llama a la segunda versión de la función suma, con parámetro a : List[int]
>> 15

Nota: Esta documentación es un resumen de alto nivel. Para obtener más detalles sobre la implementación y el uso avanzado, se recomienda consultar el código fuente, la documentación provista y realizar pruebas adicionales.

Documentación

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

sobrecargar-3.0.3.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sobrecargar-3.0.3-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file sobrecargar-3.0.3.tar.gz.

File metadata

  • Download URL: sobrecargar-3.0.3.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for sobrecargar-3.0.3.tar.gz
Algorithm Hash digest
SHA256 a11cda0264f0f34fd0f47539fb4bdbc6fcecb486e6365cacaca6589d5ae1055c
MD5 23ac0f03e962655f66cc841d533f9bde
BLAKE2b-256 580aeee20eed3114f8860ffc73d9db20452f0e1a40b8e5bf2e85355bed90fc3c

See more details on using hashes here.

File details

Details for the file sobrecargar-3.0.3-py3-none-any.whl.

File metadata

  • Download URL: sobrecargar-3.0.3-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for sobrecargar-3.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8acda1809206ce543d0e073131ed693fa22f2a6d4f7932cf145fcf73cc0f7468
MD5 119238335c0227818ca06467d51986e1
BLAKE2b-256 f508ae3ad40b2b5f663386f4b5cea46fccb7846d22085941cde376da6cbdc783

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