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

Desafío de método - Tarea 2

No estoy seguro de dónde estoy cometiendo un error en esta tarea. Cuando ejecuto esto en VS Code no produce errores. Gracias de antemano.

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

    def __init__(self, name, edad):
        self.is_hungry = Verdadero
        self.name = name
        self.edad = edad
    def eat (self):
        self.is_hungry = False
        self.name = 'Bao Bao'
        r = (f'{self.name} eats {self.food}.')
        return r
Jeff Muday
Jeff Muday
28,732 Puntos

¡Asher Orr es correcto, y tú también tienes razón!

El calificador automático del Desafío utiliza una prueba unitaria basada en la salida de una expresión regular. La expresión regular espera solo un return '${self.name} eats {self.food}.'

Por lo tanto, marcará como incorrectas otras formas válidas de completar este ejercicio.

La moraleja de esta historia es intentar un Desafío, si no puedes completarlo con un esfuerzo razonable entonces pregunta a la comunidad y continúa.

1 Respuesta

Asher Orr
sello-máscara
.a{fill-rule:evenodd;}techdegree seal-36
Asher Orr
Desarrollo en Python Graduado de Techdegree 9,411 Puntos

¡Hola Dominic!

Mira este mensaje de error:

Rastreo (razón más reciente llamar última):
  Archivo Espero que esto le ahorre mucho tiempo a algunas personas si se quedan atrapadas..., línea 67, en resultados_prueba
AssertionError: 'Bao Bao come bayas.' != 'Charles come bayas.'
- Bao Bao come bayas.
+ Charles come bayas.
 : Marca seguro a usar el atributos ya en el class. Cuando No crear una instancia con Charles como el panda's nombre y cambiar el atributo de comida a bayas, yo no't get el derecha message.

Como el desafío en sí ejecutará tu código con 'Bao Bao' como atributo de nombre, deberías eliminar esta línea:

        self.name = 'Bao Bao'

Cuando ejecuté tu código después de eliminar esa línea, aún obtuve un AssertionError (Regex no coincidió).

Creo que es porque la tarea pide devolver una cadena, no una variable.

Intenta devolver una f-String formateada en lugar de la variable "r".

¡Avísame si eso funciona!

¡Hola Asher, eso funcionó! Gracias por tomarte el tiempo de ayudar.

Y gracias por tu respuesta Jeff, lo aprecio.