我有一个字典,它将整数绑定到字母表中的每个字符,如下所示:
letter_values = {'a': 1, 'b': 3, 'c': 3}
依此类推
我的程序要求用户输入,迭代字符串的每个字符,并将字典中的尊重值添加到名为score的变量中,如下所示:
word = raw_input('Please enter your word: ')
score = 0
if len(word) == 0:
return score
else:
for letter in word:
for letter in SCRABBLE_LETTER_VALUES.keys():
char_value = SCRABBLE_LETTER_VALUES.values()
score += char_value
对于我为变量char_value赋值的行,我收到以下错误:
int() argument must be a string or a number, not 'list'
由此我假设Python没有认识到dict中的值是一个整数(?)如果是这样,我怎样才能将dict的整数添加到变量中?
答案 0 :(得分:3)
values()
返回一个列表,而不是特定值。但是,字典值可以通过方括号访问。尝试:
for letter in word:
score += letter_values[letter]