使用lettervalues计算字符串的总和

时间:2012-03-05 19:00:44

标签: python string sum

我花了太多时间试图解决看似简单的任务。

我已经为一些字母/变量分配了不同的值。例如:

o,b,c,d,e,f = 1,2,3,4,5,6

我希望找到包含任何字母的字符串的“总和”,如下所示:

'coffee' = 3+1+6+6+5+5

有一种简单/快捷的方法吗?

2 个答案:

答案 0 :(得分:7)

lettermap = {
  'o': 1,
  'b': 2,
   ...
}

print sum(lettermap[c] for c in 'coffee')

答案 1 :(得分:2)

您需要dictsum()的结构:

>>> dct = {'a': 1, 'b': 2, 'c': 3}
>>> sum(dct[ch] for ch in 'aab')
4