Requisito previo: conceptos básicos de programación orientada a objetos en Python
En este artículo, aprenderemos cómo acceder a métodos y atributos de objetos dentro de otros objetos en Python. Si tenemos dos clases diferentes y una de estas define otra clase al llamar al constructor. Entonces, el método y los atributos de otra clase pueden ser accedidos por objetos de primera clase (es decir, objetos dentro de objetos).
Aquí, en el siguiente ejemplo, aprendemos a acceder a objetos (sus métodos y atributos) dentro de un objeto. Definimos dos clases (primera clase y segunda clase) con definiciones adecuadas.
- La primera clase consta de un constructor y un método.
- El constructor forma un objeto de la segunda clase en el atributo de la primera clase.
- El método define la presencia en el método de primera clase.
- De manera similar, la segunda clase consta de un constructor y un método.
- El constructor forma un atributo.
- El método define la presencia en el método de segunda clase.
Como el atributo de la primera clase funciona como un objeto de la segunda clase, se puede acceder a todos los métodos y atributos de la segunda clase usando esto:
object_of_first_class.attribute_of_first_class
A continuación se muestra la implementación:
Python3
# python program to understand the # accessing of objects within objects # define class first class first: # constructor def __init__(self): # class second object # is created self.fst = second() def first_method(self): print("Inside first method") # define class second class second: # constructor def __init__(self): self.snd = "GFG" def second_method(self): print("Inside second method") # make object of first class obj1 = first() print(obj1) # make object of second class # with the help of first obj2 = obj1.fst print(obj2) # access attributes and methods # of second class print(obj2.snd) obj2.second_method() # This code is contributed # by Deepanshu Rustagi.
Producción:
<__main__.first object at 0x7fde6c57b828> <__main__.second object at 0x7fde6c57b898> GFG Inside second method
Publicación traducida automáticamente
Artículo escrito por deepanshu_rustagi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA