Puntuación de una Palabra en Spelling Bee
Descripción
De acuerdo con las reglas de “Spelling Bee”:
- Las palabras de 4 letras, valen 1 punto.
- Las palabras más largas valen 1 punto por letra.
- Cada acertijo incluye al menos un “pangrama”, el cuál usa todas las letras. Estas palabras valen 7 puntos extra.
Escribe una función llamada word_score
que tome una palabra y una cadena de letras disponibles y devuelva su puntuación. Puedes asumir que la palabra es válida.
@mkfnx Ejercicio de #programación #python : Calcular la puntuación que otorga una palabra en el juego de "Spelling Bee" del New York Times. Este ejercicio proviene del capítulo sobre iteración y búsqueda del libro "Think Python".Puedes encontrar este ejercicio y muchos más en el sitio PythonGym en el que estoy recopilando ejercicios de Python para que puedas practicar y mejorar tus habilidades de programación.#DesarrolloDeSoftware #EjerciciosProgramación #ProgramaciónPython #AprendeEnTikTok #TechTok #DevTok ♬ sonido original - Miguel
Puedes usar las funciones de ejercicios previos.
Esta es una guía de la función requerida, que incluye doctests
.
def word_score(word, available):
"""Compute the score for an acceptable word.
>>> word_score('card', 'ACDLORT')
1
>>> word_score('color', 'ACDLORT')
5
>>> word_score('cartload', 'ACDLORT')
15
"""
return 0
Ejemplo de Ejecución:
print(word_score('card', 'ACDLORT'))
1
print(word_score('color', 'ACDLORT'))
5
print(word_score('cartload', 'ACDLORT'))
15
Solución
Mostrar solución
def word_score(word, available):
"""Compute the score for an acceptable word.
>>> word_score('card', 'ACDLORT')
1
>>> word_score('color', 'ACDLORT')
5
>>> word_score('cartload', 'ACDLORT')
15
"""
word_length = len(word)
if word_length <= 4:
return 1
score = word_length
if uses_all(word, available):
score += 7
return score
Fuente del ejercicio: https://allendowney.github.io/ThinkPython/chap07.html#id3