python - 将整数分配给字母并将这些整数相加
问题描述
我正在尝试将数字 1-26 分配给字母 az 并根据任何给定的字符串将这些数字相加,但没有任何成功。例如:a = 1, b=2, c=3
。因此,如果任何给定的字符串是"abc"
,则输出应该是1+2+3=6
。
编程背景——新手,自学。我只学习了python编程中的字符串、列表及其相应的方法。我还没有研究过函数和类,所以请让你的答案尽可能简单。
到目前为止我已经尝试过
Name = "abc"
a,b,c = [1,2,3]
Sum_of_name = ""
For alphabet in abc:
Sum_of_name = sum_of_name + alphabet
Print(sum_of_name)
打印出相同的 abc。
我意识到当我迭代字符串“abc”时,该字符串与变量 a、b 和 c 不同。因此,整数没有分配给字符串,也不能相加。
关于我如何以我目前的知识水平解决这个问题的任何建议。
解决方案
这是一种方法。
演示:
from string import ascii_lowercase
d = {v: i for i,v in enumerate(ascii_lowercase, 1)}
Name = "abc"
print( sum(d[i] for i in Name) )
输出:
6
推荐阅读
- python - Navision / Shopify SKU
- r - 单击超链接并返回原始网络,它将再次连接或界面模糊
- reactjs - 如何将有效负载传递给选择器?反应 + 还原
- python - PySpark shell 命令不产生任何输出
- php - buster、apache、php5.6 和 php curl 的问题
- javascript - 将可拖动区域限制为仅图标
- reactjs - Fetch的cache属性和axios api有什么区别
- javascript - Recharts 条形图未显示
- google-apps-script - 获取 Google 表单中所有部分的列表或从每个响应中获取该属性?
- json - 通过名为 release-date 的子键在 python 中对 json 进行排序