Python:每日一题 154:找到最高的得分单词

本文介绍了一个简单的算法,用于从给定的一串单词中找出字母总分最高的单词,并提供了Python实现代码。该算法通过计算每个单词中字母的ASCII值来确定其得分。
给定一串单词,你需要找到最高的得分单词。
一个字的每个字母根据它在字母表中的位置得分:a = 1,b = 2,c = 3等
您需要将最高得分的单词作为字符串返回。
如果两个单词得分相同,则返回原始字符串中最早出现的单词。
所有字母都是小写字母,所有输入都是有效的。
Test:
test.assert_equals(high('man i need a taxi up to ubud'), 'taxi')
test.assert_equals(high('what time are we climbing up the volcano'), 'volcano')

test.assert_equals(high('take me to semynak'), 'semynak')


Python源码:

def score(word):
    s = 0
    for i in word:
        s += ord(i) - 96
    return s
sentence = input()
words = sentence.split(' ')
scores = list(zip(map(score, words), words))
scores.sort(key=lambda x:x[0], reverse=True)
print(scores[0][1])

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值