读代码专项第 2 题:字典计数 KeyError names = ["张三", "李四", "张三"] counts = {} for name in names: counts[name] = counts[name] + 1 print(counts)

  1. 代码意图:
    统计 names 中每个名字出现的次数。

  2. 问题和根因:
    问题在 counts[name] = counts[name] + 1。Python 会先计算右边 counts[name] + 1,第一次遇到“张三”时 counts 还是空字典,里面没有“张三”这个 key,所以抛 KeyError。

  3. 修复方案:
    改成 counts[name] = counts.get(name, 0) + 1。

posted @ 2026-06-16 10:25  呵哈哈哈哈  阅读(1)  评论(0)    收藏  举报