为了账号安全,请及时绑定邮箱和手机立即绑定

尝试为用户输入的每个字母分配一个表达式,然后打印单词和该单词的总和

尝试为用户输入的每个字母分配一个表达式,然后打印单词和该单词的总和

智慧大石 2021-09-24 16:17:11
我正在寻找一种快速解决方案来使用表达式计算多个变量,然后将这些表达式的总数相加。我知道将if案例添加到每个可能的组合中并不是要走的路。h = 8 * 6e = 5 * 6l = 12 * 6o = 15 * 6example: type in any word: hello>>> hello: 312为每个字母变量分配其自己的等价字母字符串。例如a = 'a'当 True 时,要求用户输入任何单词。如果单词中有字母,则为每个字母分配一个表达式。例如a = 1 * 6在那之后,我不确定如何轻松处理用户输入的任何字母组合以添加总数。
查看完整描述

1 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

如果您的字母和值在字典中,您可以在遍历字母时轻松查找值。


例如:


letter_values = {

  'h': 8 * 6,

  'e': 5 * 6,

  'l': 12 * 6,

  'o': 15 * 6

}


letter_values['h'] # 48


# use get() to return zero if not found


letter_values.get('h', 0) # 48

letter_values.get('&', 0) # 0

有了这个,你可以理解循环你单词中的字母并计算结果的总和:


# for each letter get the value (or 0) and sum them:

sum(letter_values.get(letter, 0) for letter in str)


# result 312


查看完整回答
反对 回复 2021-09-24
  • 1 回答
  • 0 关注
  • 203 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号