我正在尝试编写一个使用Python字典来计算英语单词的拼字游戏分数的函数。我快到了,但我不断收到烦人的错误:
这是代码:
d = {"0":'blank',
"1":'A, E, I, L, N, O, R, S, T, U',
"2":'D, G',
"3":'B, C, M, P',
"4":'F, H, V, W, Y',
"5":'K',
"8":'J, X',
"10":'Q, Z',}
w = input("enter a word")
def scrab(w): #define function
tot = 0
w.upper()
for key in w:
tot = tot + d[key]
return tot
scrab(w)
print(tot, w)
输出:
Traceback (most recent call last):
File "C:/Users/Bola42/Downloads/IsaiahSLab13Dictionary.py", line 65, in <module>
scrab(w)
File "C:/Users/Bola42/Downloads/IsaiahSLab13Dictionary.py", line 58, in scrab
tot = tot + d[key]
KeyError: ' '
帮忙吗?到底是怎么回事?
最佳答案
您将键和值向后移动。您将分数用作字典中的键,并将字母字符串用作值。此外,您没有在输入值上使用strip()
,因此您正在处理附带的空格,而不是仅处理字母字符。
关于python - 为什么会收到此KeyError?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58602521/