Introducción al tema “Polimorfismo criptográfico” **El polimorfismo** (del griego polý - “muchos” y morphe - “forma”) en programación es una propiedad de una función que permite su uso en diferentes contextos sin cambiar su comportamiento . Por lo tanto, una función de un tipo puede usarse para ser llamada dentro de otro tipo, manteniendo su significado semántico original. Una condición necesaria para que una función se utilice como función sin referencia (externa) es la encapsulación. Si se accede directamente al código de función, se dice que está en código esférico. La función también se puede usar con los modificadores `__init__`, `__new__` y `__call__`; estas son propiedades de los decoradores `@staticmethod` y `@classmethod`. En este caso, podemos hablar de “estáticamente polimórfico” o “clase-polimórfico”.
Por ejemplo, la función para calcular la raíz cuadrada: ``` def sq_root(x): return x ** 0.5 ``` y la función para calcular la función parabólica:
```py def parabola(coefs): coeficientes de función y = ax^2 + bx + c pass ``` ambas funciones se pueden usar en un programa, dentro de una función y/o clase, con el mismo éxito. Aceptan argumentos, un valor de retorno y conservan el comportamiento del código fuente dentro de sus cuerpos de la misma manera. Como resultado de su implementación, pueden considerarse funciones, es decir.