我需要编写一个程序,它要求一个单词,它将是小写的,并输出该单词的值在拼字游戏中。 例如:
Enter word: quiz
22
说实话,我真的不知道怎么做这个问题,到目前为止我所做的可能是错的。我刚刚开始编码2周前所以我不确定很多命令,比如如何将一个单词拆分成单独的字符。到目前为止,我的计划是:
SCORES = {
'a' : 1, 'b' : 3, 'c' : 3 , 'd' : 2, 'e' : 1, 'f' : 4, 'g' : 2,
'h' : 4, 'i' : 1, 'j' : 8 , 'k' : 5, 'l' : 1, 'm' : 3, 'n' : 1,
'o' : 1, 'p' : 3, 'q' : 10, 'r' : 1, 's' : 1, 't' : 1, 'u' : 1,
'v' : 4, 'w' : 4, 'x' : 8 , 'y' : 4, 'z' : 10,
}
a=input('Enter word: ')
b=a.split()
for b in SCORES:
c=SCORES[b]
有谁能帮助我了解如何做到这一点并告诉我这个问题可能需要的任何命令。
答案 0 :(得分:1)
我认为你已经通过定义SCORES字典开始了。
现在,您可以通过以下方式将您的单词翻译成值列表:
myword = raw_input("Enter word: ")
letter_values = map(lambda letter: SCORES[letter], myword)
然后你可以总结一下得到总分:
word_value = sum(letter_values)
print(word_value)
map函数在字符串上应用元素元素,而lambda只定义了一个内联函数,用于为每个字母选取分数。