Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> python

Explorando clases y objetos anónimos en Python

La función integrada type() de Python devuelve la clase a la que pertenece un objeto. En Python, una clase, ya sea una clase integrada o una clase definida por el usuario, son objetos de tipo class.

Ejemplo

 class myclass: def __init__(self): self.myvar=10 return obj = myclass() print ('class of int', type(int)) print ('class of list', type(list)) print ('class of dict', type(dict)) print ('class of myclass', type(myclass)) print ('class of obj', type(obj)) 

Producirá la siguiente salida:

 class of int <class 'type'> class of list <class 'type'> class of dict <class 'type'> class of myclass <class 'type'> 

La función type() tiene una versión de tres argumentos como sigue:

Sintaxis

 newclass=type(name, bases, dict) 

Usando la sintaxis anterior, una clase puede crearse dinámicamente. Tres argumentos de la función type son:

Crear una clase anónima

Podemos crear una clase anónima con la versión anterior de la función type(). El argumento name es una cadena nula, el segundo argumento es una tupla de una clase, la clase object (note que cada clase en Python hereda de la clase object). Agregamos ciertas variables de instancia como tercer argumento diccionario. Lo mantenemos vacío por ahora.

 anon=type('', (object, ), {}) 

Crear un objeto anónimo

Para crear un objeto de esta clase anónima:

 obj = anon() print ("type of obj:", type(obj)) 

El resultado muestra que el objeto es de clase anónima

 type of obj: <class '__main__.'> 

Ejemplo de clase y objeto anónimos

También podemos agregar variables de instancia y métodos de instancia dinámicamente. Vea este ejemplo:

 def getA(self): return self.a obj = type('',(object,),{'a':5,'b':6,'c':7,'getA':getA,'getB':lambda self : self.b})() print (obj.getA(), obj.getB()) 

Producirá la siguiente salida:

 5 6 

python

  1. Dominando argumentos de funciones en Python: Posicionales, por palabra clave y por defecto
  2. Domine el Formateo de Strings en Python con format(): Ejemplos Claros
  3. Dominando Objetos y Clases en Python: Guía Práctica
  4. Dominando la Sobrecarga de Operadores en Python: Guía Práctica
  5. Domine <code>__slots__</code> en clases Python: optimice memoria y velocidad
  6. Chuleta de Python Basics: Tipos de datos esenciales, diccionarios, listas y funciones
  7. Funciones en Python explicadas: Construyendo módulos de código reutilizable
  8. Diccionarios en Python: Añadir, Actualizar y Gestionar Pares Clave/Valor
  9. SciPy en Python: Tutorial completo sobre librerías y funciones
  10. Colas en Python: entendiendo FIFO y LIFO con ejemplos prácticos
  11. Dominando Números, Conversión de Tipos y Matemáticas en Python