pybites / challenges

PyBites Code Challenges
https://codechalleng.es/challenges/
693 stars 2.29k forks source link

initial, clumsy solutuon #858

Open pritchardians opened 1 year ago

pritchardians commented 1 year ago

""" Initial, rather clumsy solution to try the PR system out.

ToDo: Use comprehensions to refactor and improve

""" from data import DICTIONARY, LETTER_SCORES

def load_words(): """Load dictionary into a list and return list""" with open(DICTIONARY) as my_dict: return my_dict.read().splitlines()

def calc_word_value(word): """Calculate the value of the word entered into function using imported constant mapping LETTER_SCORES""" score = 0 for letter in word: current_score = LETTER_SCORES.get(letter.upper()) if current_score: score += current_score return score

def max_word_value(): """Calculate the word with the max value, can receive a list of words as arg, if none provided uses default DICTIONARY""" max_word = "" max_score = 0 all_words = load_words() for word in all_words: score = calc_word_value(word) if score > max_score: max_word = word max_score = score return max_word

if name == "main": pass # run unittests to validate