You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python查找最高得分单词,函数封装后遍历异常问题求助

Python单词得分查找函数问题修复

原有代码的核心问题

  • 提前终止遍历:return语句写在单词遍历循环内部,处理完第一个匹配条件的单词就直接退出函数,不会遍历剩余所有单词
  • 语法调用错误:total是单个整数,调用max(total)属于非法操作,会直接抛出类型错误
  • 缺少必要存储变量:仅记录了最高得分的数值,没有存储对应的单词内容,无法返回需求要求的结果

修复后的完整代码

import string

def high(x):
    alphabet = string.ascii_lowercase
    sentence = x.split()
    high_total = 0
    high_score_word = ""
    
    for word in sentence:
        total = 0
        for pos in word:
            if pos in alphabet:
                total += ord(pos) - 96
        # 得分更高时同步更新得分和对应单词
        if total > high_total:
            high_total = total
            high_score_word = word
    # 遍历完全部单词后再返回结果
    return high_score_word

print(high("the testingg"))

运行上述代码会正确输出得分最高的单词:testingg

额外优化提示

将import string放在函数顶部而非函数内部,是Python的通用最佳实践,可以避免每次调用函数时重复执行导入逻辑,小幅提升执行效率。

内容的提问来源于stack exchange,提问作者Uche24

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 05:24:03