Las funciones de primera clase en Python




Artículos

En la programación orientada a objetos, el concepto clave es el del objeto . Un objeto es un tipo de datos creados por un programador para representar una entidad con datos y funciones. Mientras que otros tipos de datos son simples representaciones de valor, tales como números enteros o caracteres, los objetos son complejos, incluyendo muchos de los valores y funciones de los datos. Sin embargo, los objetos todavía se comportan como los otros tipos de datos, en el sentido de que puede crearse, destruirse, copiada y se utiliza como argumentos para otras funciones.

Objetos de primera clase

Objetos de primera clase son objetos que pueden ser creados o destruidos, o se utilizan como argumentos de la función. En la mayoría de los lenguajes de programación orientados a objetos, todos los objetos son objetos de primera clase. Pero otras entidades, tales funciones no son objetos de primera clase. Una función en C + + no se comporta como un objeto en C + + se comporta, por lo que hay una clara diferencia entre los dos en la aplicación del código de C + +.

Objetos Python 

Un dicho popular sobre el lenguaje de programación Python que dice " Todo es un objeto". El dicho es cierto. Todo en Python no actúa como un objeto. En particular, las funciones son objetos de primera clase en Python. Esto hace que las características funciones de primera clase que los programadores pueden pasar como argumentos a otras funciones. Esto significa que las funciones que también tienen un conjunto de atributos similares a las clases, que almacenan los datos en una instancia particular de una función de corriente.

Ejemplos

En este ejemplo, el programador crea dos funciones simples. La primera se define como una función normal con un argumento variable. El segundo se utiliza la primera función en la lista de parámetros. La segunda función se puede llamar a la primera función en su definición. La función llamada dentro de otra función que usted puede utilizar las variables locales dentro de la función que la llamó:

> > > func1 def (x):

. . return x * 3

> > > def func2 (F, Y) / / f es una función, pero tiene la misma apariencia de una variable

. . retorno f (y) / / Python reconoce f es una función, ya que se utiliza como uno

> > > func2 (func1, 3)

9



Deja un comentario