Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
3
respuestas

Error en código de "Métodos y atributos" en "Avanzando en la orientación a objetos"

Buenas tardes, he estado en el curso de "Métodos y atributos" en "Avanzando en la orientación a objetos", estoy tratando de ejecutar un método pero me genera un error, el código es el siguiente:

class Pelicula: def init(self, nombre, ano , duracion, me_gusta=0): self.nombre = nombre.title() self.ano = ano self.duracion = duracion self.me_gusta = me_gusta

def me_gusta(self): self.me_gusta = self.me_gusta + 1

class Serie: def init(self, nombre, ano, temporadas, me_gusta=0): self.nombre = nombre.title() self.ano = ano self.temporadas = temporadas self.me_gusta = me_gusta

def me_gusta(self): self.me_gusta = self.me_gusta + 1

spr = Pelicula('Salvando al soldado Ryan', '1998', '170') hl = Serie('Heartland', 2007, 16)

spr.gusta()

Error:


AttributeError Traceback (most recent call last) in <cell line: 1>() ----> 1 spr.gusta()

AttributeError: 'Pelicula' object has no attribute 'gusta'

3 respuestas
solución!

Hola Estudiante, ¡espero que estés bien!

Tienes el método me_gusta pero tu código tienes solo gusta(), por lo que el Python no encuentra el método correcto me_gusta. Mi sugerencia es cambiar el código para spr.me_gusta() :)

¡Saludos y buenos estudios!

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!

Tengo el mismo problema, el punto de spr.gusta() es para dar like, si colocamos spr.me_gusta() es para conocer cuantos likes tenemos.

Porque en el video si el coloca spr.gusta() si le funciona para dar likes, y a nosotros nos marca error.

Eduardo Franco Frias,

Buenos días, yo pude solucionar el código ajustando los nombres de los métodos, el código es el siguiente:
class Pelicula:
  def __init__(self, nombre, ano , duracion, me_gusta = 0):
    self.nombre = nombre
    self.ano = ano
    self.duracion = duracion
    self.me_gusta = me_gusta

  def gusta(self):
    self.me_gusta +=1

class Serie:
  def __init__(self, nombre, ano, temporadas, me_gusta = 0):
    self.nombre = nombre.title()
    self.ano = ano
    self.temporadas = temporadas
    self.me_gusta = me_gusta

  def gusta(self):
    self.me_gusta +=1

spr = Pelicula('Salvando al soldado Ryan', '1998', '170', 0)
hl = Serie('Heartland', 2007, 16)

spr.gusta()

spr.me_gusta #R=1


print(f'El nombre de la pelicula es: {spr.nombre} - el año {spr.ano} - la duracion {spr.duracion} minutos')
print(f'El nombre de la serie es: {hl.nombre} - el año {hl.ano} - las temporadas {hl.temporadas}.')

El nombre de la pelicula es: Salvando al soldado Ryan - el año 1998 - la duracion 170 minutos

El nombre de la serie es: Heartland - el año 2007 - las temporadas 16.


Saludos, espero que le sea de utilidad. Reciba un venturoso año nuevo 2024.