En un método def area(self):, ¿qué es self?
Opciones
- Una palabra reservada que se refiere a la propia clase
- La instancia (objeto) sobre la que se llamó el método (Opción correcta)
- La clase padre de la que hereda la clase actual
- Una variable global que todos los métodos pueden leer
Respuesta
La instancia (objeto) sobre la que se llamó el método
Por qué
Cuando escribes rect.area(), Python en realidad llama a Rectangle.area(rect): el objeto antes del punto se pasa automáticamente como primer argumento.
Por convención ese primer parámetro se llama self. A través de él, el método lee y cambia los datos de ese objeto, como self.width.
Recuerda
self = el objeto con el que trabaja el método.