Haciendo todos los pasos que mostraba David me salia este error: C:\Users\Administrador\AppData\Local\Programs\Python\Python38\python.exe...

Pregunta de la clase:
Abstracción
Diego Fernando Torres Coy

Diego Fernando Torres Coy

Pregunta
studenthace 5 años

Haciendo todos los pasos que mostraba David me salia este error:

C:\Users\Administrador\AppData\Local\Programs\Python\Python38\python.exe C:/Users/Diego/PycharmProjects/untitled1/venv/Prueba.py

Traceback (most recent call last):

File “C:/Users/Diego/PycharmProjects/untitled1/venv/Prueba.py”, line 27, in <module>

lavadora.lavar()

TypeError: lavar() missing 1 required positional argument: ‘self’

Las lineas a las que hace referencia estaban asi:

if name == ‘main’:

whirpool=lavadora()

lavadora.lavar()

Despues de buscar por la red encontre que antes de lavadora.lavar() debia poner parentesis.

if name == ‘main’:

whirpool=lavadora()

lavadora().lavar()

Lo solucione pero no entiendo el porque . ¿Alguien me podría ayudar?

2 respuestas
para escribir tu comentario
    Diego Fernando Torres Coy

    Diego Fernando Torres Coy

    studenthace 5 años

    Muchas gracias.

    Anthony Smith Quispe De la cruz

    Anthony Smith Quispe De la cruz

    studenthace 5 años

    Cuando creas el objeto con lavadora() lo asignas a whirpool y luego haces la llamada a la funcion lavar() con el nombre de la clase lavadora, al hacer esto no estas haciendo la llamada con una instancia de esa clase y por ello no tiene el parametro self implícito, debido a ello cuando invocas a lavar() te falta ese argumento y te muestra ese fallo. Cuando utilizas lavadora().lavar() se crea una instancia temporal y se realiza la llamada con esa instancia, al tener una instancia temporal puedes llamar a lavar().

Curso de POO y Algoritmos con Python

Curso de POO y Algoritmos con Python

Comprende la eficiencia algorítmica con Python. Analiza complejidad temporal y espacial, visualiza resultados y resuelve problemas de optimización. Ideal para desarrollar habilidades esenciales en el análisis de algoritmos.

Curso de POO y Algoritmos con Python
Curso de POO y Algoritmos con Python

Curso de POO y Algoritmos con Python

Comprende la eficiencia algorítmica con Python. Analiza complejidad temporal y espacial, visualiza resultados y resuelve problemas de optimización. Ideal para desarrollar habilidades esenciales en el análisis de algoritmos.