Un objeto es una instancia de una clase. Una clase es como un modelo, mientras que una instancia es una copia de la clase con valores reales. Python es un lenguaje de programación orientado a objetos que hace hincapié en los objetos, es decir, hace hincapié principalmente en las funciones. Los objetos son básicamente una encapsulación de variables de datos y métodos que actúan sobre esos datos en una sola entidad.
Nota: Para obtener más información, Clases y objetos de Python
Comprensión del objeto
Para una mejor comprensión del concepto de objetos, considere un ejemplo, muchos de ustedes han jugado a CLASH OF CLANS, así que supongamos que el diseño base es la clase que contiene todos los edificios, defensas, recursos, etc. Basándonos en estas descripciones hacemos un pueblo. , aquí el pueblo es el objeto.
Sintaxis:
obj = MyClass() print(obj.x)
La definición de instancia representa la asignación de memoria necesaria para almacenar los datos reales de las variables. Cada vez que crea un objeto de clase, se crea la copia de cada variable de datos definida en esa clase. En un lenguaje sencillo, podemos afirmar que cada objeto de una clase tiene su propia copia de los miembros de datos definidos en esa clase.
Crear un objeto
Python3
class Cars: def __init__(self, m, p): self.model = m self.price = p Audi = Cars("R8", 100000) print(Audi.model) print(Audi.price)
Producción:
R8 100000
Funcionamiento del Programa:
Audi = Coches():
- Se asigna un bloque de memoria en el montón. El tamaño de la memoria asignada se decide por los atributos y métodos disponibles en esa clase (Autos).
- Después de asignar el bloque de memoria, se llama internamente al método especial __init__(). Los datos iniciales se almacenan en las variables a través de este método.
- La ubicación de la dirección de memoria asignada de la instancia se devuelve al objeto (Autos).
- La ubicación de la memoria se pasa a self .
Acceder a un miembro de la clase usando un objeto:
Se puede acceder a la variable y al método de una clase mediante el uso de instancias o objetos de clase.
Sintaxis:
obj_name.var_name Audi.model obj_name.method_name() Audi.ShowModel(); obj_name.method_name(parameter_list) Audi.ShowModel(100);
Ejemplo 1:
Python3
# Python program to create instance # variables inside methods class Car: # Class Variable vehicle = 'car' # The init method or constructor def __init__(self, model): # Instance Variable self.model = model # Adds an instance variable def setprice(self, price): self.price = price # Retrieves instance variable def getprice(self): return self.price # Driver Code Audi = Car("R8") Audi.setprice(1000000) print(Audi.getprice())
Producción:
1000000
Ejemplo 2:
Python3
class Car: # Class Variable vehicle = 'Car' # The init method or constructor def __init__(self, model, price): # Instance Variable self.model = model self.price = price # Objects of class Audi = Car("R8", 100000) BMW = Car("I8", 10000000) print('Audi details:') print('Audi is a', Audi.vehicle) print('Model: ', Audi.model) print('price: ', Audi.price) print('\n BMW details:') print('BMW is a', BMW.vehicle) print('Model: ', BMW.model) print('Color: ', BMW.price) # Class variables can be # accessed using class # name also print("\nAccessing class variable using class name") print(Car.vehicle) # or print(Audi.vehicle) # or print(BMW.vehicle)
Producción:
Audi details: Audi is a Car Model: R8 price: 100000 BMW details: BMW is a Car Model: I8 Color: 10000000 Accessing class variable using class name Car Car Car
Variable propia:
SELF es una variable predeterminada que contiene la dirección de memoria del objeto actual. Las variables de instancia y los métodos pueden ser referidos por la variable self. Cuando se crea el objeto de una clase, la ubicación de memoria del objeto está contenida por su nombre de objeto. Esta ubicación de memoria se pasa a SELF internamente, ya que SELF conoce la dirección de memoria del objeto, por lo que la variable y el método de un objeto son accesibles. El primer argumento de cualquier método de objeto es SELF porque el primer argumento siempre es una referencia de objeto. Este proceso se lleva a cabo automáticamente tanto si lo llama como si no.
Ejemplo:
Python3
class Test: def __init__(Myobject, a, b): Myobject.country = a Myobject.capital = b def myfunc(abc): print("Capital of " + abc.country +" is:"+abc.capital) x = Test("India", "Delhi") x.myfunc()
Producción:
Capital of India is: Delhi
Nota: Para obtener más información, consulte self en la clase de Python
Eliminación de un objeto:
La propiedad del objeto se puede eliminar usando la palabra clave del:
Sintaxis:
del obj_name.property
los objetos también se pueden eliminar con la palabra clave del:
Sintaxis:
del obj_name
Publicación traducida automáticamente
Artículo escrito por jeeteshgavande30 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA