嗨,我正在進行Codecademy練習9/15。目標是創建一個拼字遊戲函數,該函數將字符串作爲輸入,然後返回該單詞的分數。創建一個將字符串作爲輸入並返回該字的分數的Python拼字遊戲函數
他們給你一個字典開始,這是我搜索「如何循環訪問字典並添加值」在谷歌迄今爲止。
score = {"a": 1, "c": 3, "b": 3, "e": 1, "d": 2, "g": 2,
"f": 4, "i": 1, "h": 4, "k": 5, "j": 8, "m": 3,
"l": 1, "o": 1, "n": 1, "q": 10, "p": 3, "s": 1,
"r": 1, "u": 1, "t": 1, "w": 4, "v": 4, "y": 4,
"x": 8, "z": 10}
1) total = 0 # takes your input word value and saves it to total
2) def scrabble_score(x): # defining function name
3) for i in score.values(): # loops through score
4) total += i # sums up your input key value
5) return i
該代碼不斷拋出一個局部變量總誤差。
這是否意味着總變量不能與scrabble_score(x)函數一起使用?
你也有一個不同的問題。請注意,您從不在函數中使用變量'x',這意味着返回的任何結果都不依賴於輸入單詞。你也許會在函數內部最好聲明'total',這樣每次調用函數時都可以計算出不同的總和。 –
你也正在返回'我',這意味着你只是返回最後一個分數。 –