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

如何重构Python代码以统计数字频率而非字符频率?

统计数字频率的Python代码修改

原代码用于统计字母频率,现将其修改为统计数字频率的正确实现,解决原代码中的变量错误、判断逻辑错误等问题:

def count_numbers(text):
    import string
    result = {}
    
    # 遍历文本中的每个字符
    for char in text:
        # 检查当前字符是否为数字
        if char in string.digits:
            if char not in result:
                result[char] = 0
            # 累加该数字的出现次数
            result[char] += 1
    
    return result

关键修改点:

  • 函数名从count_letters改为count_numbers,匹配新功能定位
  • 循环变量替换为char,避免使用Python内置关键字int作为变量名
  • 判断条件改为string.digits,仅筛选数字字符
  • 移除字母转小写的逻辑,数字不存在大小写差异
  • 修正原代码中变量名不一致的错误(原代码循环用int却引用未定义的letter,导致运行报错)

测试验证:

print(count_numbers("This is a sentence."))
# 输出:{}
print(count_numbers("55 North Center Drive"))
# 输出:{'5': 2}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 09:26:08