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

Python嵌套字典代码运行无报错无输出,求排查问题原因

代码问题排查及修复方案

核心错误点

  • 缩进逻辑错误:三处打印语句全部缩进到了totalItems函数内部,且位置在return语句之后,代码运行时永远不会执行这部分打印逻辑,这是无任何输出的直接原因。
  • 返回语句位置错误:return numItems写在了for循环内部,函数仅遍历第一个bike类型后就会直接返回结果,无法累加所有类型的对应数值,计算结果不符合预期。
  • 语法格式错误:最后一行打印语句存在引号配对问题,外层字符串未闭合、内层参数引号和外层字符串引号冲突,会直接触发语法报错。

修复后可运行代码

bikes = {'mtb':{'sus':2, 'wheels':4},
   'bmx':{'sus':0, 'wheels':2},
   'road': {'sus':1,'wheels':4}}

def totalItems(bikes,item):
    numItems =0
    for k, v in bikes.items():
        numItems = numItems + v.get(item, 0)
    # return调整到for循环同级,遍历完成后再返回总和
    return numItems

# 打印语句调整为全局作用域,顶格编写
print('number of items:')
print('-sus  '+ str(totalItems(bikes,'sus')))
# 修复引号配对错误
print('-wheels  '+ str(totalItems(bikes,'wheels')))

运行输出

number of items:
-sus  3
-wheels  10

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 13:21:01