Skip to main content
 首页 » 编程设计

python之在 for 循环中将值加在一起 (Python)

2025年05月04日10shangdawei

word   = input('Enter word: ') 
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, 
} 
 
for letter in word: 
  result = SCORES[letter] 

这是我目前所拥有的:

Enter word: quiz 
10 
1 
1 
10 

我想要它,以便我可以将值加在一起得到 22。我该怎么做?

请您参考如下方法:

试试这个,这是惯用的解决方案:

sum(SCORES[letter] for letter in word) 

在 Python 中,只要有可能我们更喜欢使用 list comprehensions和/或 generator expressions而不是显式循环。它们比显式循环更短、更简单并且通常更快!