[ Foro de Python ]

Uso de init y variables

03-May-2018 19:48
Julian Castro
0 Respuestas

Hola estoy aprendiendo programación orientada a objetos con python (3), y estoy en un ejercicio usando __init__,  logre crear una clase y sus variables, pero en la parte de
def hablar (self, palabras):
       for frase in palabras:
           print (self.nombre, ': ', frase)
empieza el error, les dejo el código completo y el error que me marca.

class Persona:
   def __init__(self, edad, nombre):
       self.edad= edad
       self.nombre=nombre

       print("Se ha creado a", self.nombre,"de", self.edad)

   def hablar (self, palabras):
       for frase in palabras:
           print (self.nombre, ': ', frase)

juan=Persona(18, "Juan")
juan.hablar ("Hola, estoy hablando", "Este soy yo")
luis=Persona(20, "Luis")
luis.hablar ("Hola, estoy hablando", "Este soy yo")

ERROR:
Se ha creado a Juan de 18
Traceback (most recent call last):
 File "C:\User\Desktop\Python\EjemploVarsInstancias.py", line 13, in <module>
   juan.hablar ("Hola, estoy hablando", "Este soy yo")
TypeError: hablar() takes 2 positional arguments but 3 were given

Qué es lo que hice mal?, gracias por su atención.




Si ya eres usuario del sistema, puedes contestar desde tu cuenta y así ganar prestigio.

Si sólo eres un visitante, puedes optar por...