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

¿Cómo cambio el nombre del panda?

Estoy teniendo dificultades para escribir el código para pasar el argumento 'Bao Bao' al parámetro name en el atributo de instancia para que se pueda usar en la cadena f-string de retorno. He intentado numerosas formas y la lógica aún no funciona. ¿Cómo paso "Bao Bao" al parámetro name?

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

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

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

1 Respuesta

Mark Sebeck
Mark Sebeck
38,347 Puntos

Hola Melissa Benton. En realidad no necesitas pasar 'Bao Bao' al nombre. Eso se pasaría cuando se inicializa la clase. Sin embargo, no olvides incluir "self." delante de name y food en tu cadena literal.

return f'{self.name} eats {self.food}.'

Esta pregunta es confusa porque usaron Bao Bao como ejemplo de un nombre. Pero piénsalo de esta manera, cualquier cosa en el init que querrías establecer para cada Panda que crees. Cada uno tendría su propio nombre y edad. Cosas como species y food se establecen en la clase porque no cambian. Espero que esto ayude y publica en el foro si aún estás atascado.

Gracias Mark. Tu respuesta fue clara y útil.