Bienvenido a la Comunidad de Treehouse

¿Quieres colaborar en errores de código? ¿Tienes errores que necesitan comentarios? ¿Buscas un par de ojos adicionales en tu último proyecto? aquí.

¿Buscas aprender algo nuevo?

Treehouse ofrece una prueba gratuita de siete días para estudiantes nuevos. Obtén acceso a miles de horas de contenido y únete a miles de

Inicia tu prueba gratuita

Python Python Orientado a Objetos Básico Bienvenido a POO Agregando a nuestro Panda

Kenneth Bagwell Jr
Kenneth Bagwell Jr
3,698 puntos

¿Cómo debería escribirse esta sentencia condicional?

Atrapado en esta declaración if

panda.py
class Panda:
    especie = 'Ailuropoda melanoleuca'
    comida = 'bamboo'
    is_hungry = Verdadero

    def __init__(self, name, edad):
        self.name = name
        self.edad = edad
        self.is_hungry = Verdadero
        self.comida = 'bamboo'

    def eat(self):
        self.is_hungry = False
        return f'{self.name} eats {self.food}.'

    def check_if_hungry(self):
        if self.is_hungry():

        self.is_hungry = eat() 

1 Respuesta

Steven Parker
Steven Parker
244 163 puntos

Estás bastante cerca, pero veo algunos problemas:

  • is_hungry es un atributo, no un método, así que no necesitas paréntesis después de él
  • la(s) línea(s) controlada(s) por el condicional debe(n) estar indentada(s) un nivel más
  • al llamar el método interno eat(), precédelo con "self."
  • solo necesitas llamar el eat método, no necesitas asignar el resultado a nada