python - 计算词的质量算法
问题描述
我必须编写一个函数,只接收一个大写的单词并根据元音计算它的质量,问题是这样的;“元音根据它们在字母表中的位置排列,因此 A=1、E=5、I=15 等等,如果元音存在于我的单词中,那么我们就按照它的范围*它在单词中的位置来查找质量.我的尝试:
ch=input()
def poids(word):
poids=0
alpha="ABCDEFGHIJKLMNOPQRSTUVXYZ"
voy=["A","E","I","O","U","Y"]
for i in range(len(alpha)):
p=0
p1=0
for j in voy:
if alpha[i]==j:
p=alpha.find(j)+1
print("p=",p)
for k in range(len(ch)):
for m in voy:
if ch[k]==m:
p1=ch.find(m)
poids=p*p1
return poids
print(poids(ch))
解决方案
我会这样做。请试一试。
import string
alphas = string.ascii_uppercase
lookup = {char: idx for idx, char in enumerate(alphas, 1)} # a dictionary
print(alphas) # can comment out later
print(lookup) # can comment out
def poids(word):
weight = 0
vowels = 'AEIOU'
for char in word:
if char in vowels:
weight += lookup[char]
else:
continue
return weight
if __name__ == '__main__':
word = input('type a word: ')
print(poids(word))
推荐阅读
- wix - WixToolSet:RemoveFiles 无法正常工作
- c++ - 偏移纹理
- python - 如何声明一个在代码下方定义但不能向上移动的函数?
- pytest - 多线程 Pytest
- python - 如何使我的“标签”对象具有属性“获取”?
- math - 考虑到每个点都有自己的范围,尽可能多地散布点意味着什么?
- python - 在 python 中编码双变量分布的图形表示
- javascript - FlatList - 如何自动到顶部
- google-sheets - 如何将未结订单预期接收日期的第一个实例拉到不同的 Google 表中,比较零件清单
- arrays - Julia SharedArrays - 编写非位类型