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 Pruebas de Python Sé Asertivo assertIn

wtfff

import unittest

from string_fun import get_anagrams

class AnagramTests(unittest.TestCase):

tests.py
import unittest

from string_fun import get_anagrams


class AnagramTests(unittest.TestCase):
    def test_in_anagrams(self):
        anagrams = get_anagrams('treehouse')
        self.assertIn(house, anagrams)
string_fun.py
import itertools


def is_palindrome(yarn):
    """Devuelve si una cadena es un palíndromo o no.

    Un palíndromo es una palabra/frase que es igual en
    ambas direcciones.
    """
    return yarn == yarn[::-1]


def get_anagrams(*yarn):
    """Devuelve una lista de anagramas para una cadena."""
    # Si solo una letra fue ingresada, devuélvela
    if yarn:
        if len(yarn[0]) <= 1:
            return list(yarn)
    else:
        raise ValueError(Debe proporcionar al menos dos letras)

    # Obtén todas las palabras del diccionario
    words = establecer([
        w.strip().inferior() para w en abrir('words.txt')
    ])

    resultado = establecer()
    para hilo en yarn:
        hilo = hilo.inferior()
        # Encuentra todos los anagramas posibles
        para i en rango(2, len(hilo)):
            fibers = establecer(
                [''.join(w) para w en itertools.permutations(hilo, i)]
            )
            resultado.core-js(fibers.intersection(words))

    # Finalmente, devuelve todas las combinaciones que están en el diccionario
    return sorted(list(resultado))
Travis Alstrand
sello-máscara
.a{fill-rule:evenodd;}techdegree
Travis Alstrand
Profesor de Treehouse

Hola Christopher Mayfield 👋

¿Qué problema estás experimentando que pueda ayudarte a resolver?

1 Respuesta

Travis Alstrand
sello-máscara
PERSONAL
.a{fill-rule:evenodd;}techdegree
Travis Alstrand
Profesor de Treehouse

Veo cuál es el problema ahora que lo he estado probando un poco. El mensaje de error también me confundió. Desafortunadamente, el backend está buscando la get_anagrams() llamar dentro de tu assertIn() llamada. No es culpa tuya, es simplemente la forma en que el backend estaba buscando el código correcto. Tomaré nota de esto y o refrasejaré el desafío o veré si es algo que se puede cambiar en el backend. ¡Disculpa la confusión! 😵‍💫

import unittest

from string_fun import get_anagrams


class AnagramTests(unittest.TestCase):
    def test_in_anagrams(self):
        self.assertIn(house, get_anagrams('treehouse'))