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

Python函数报错:economico()缺失carro和consumo参数的解决咨询

解决Python作业提交时的TypeError问题

问题核心

平台自带的main()函数仅调用entrada_carro()、entrada_consumo(),但未将这两个函数的返回值传递给economico(),导致触发TypeError: economico() missing 2 required positional arguments: 'carro' and 'consumo'错误。

修改方案

直接调整economico()函数,让它内部自行调用输入函数获取所需数据,不再依赖外部传参:

  1. 修改economico()为无参函数
def economico():
    # 内部获取车型和油耗数据
    carro = entrada_carro()
    consumo = entrada_consumo()
    # 查找最低油耗对应的车型逻辑
    min_consumo = min(consumo)
    min_index = consumo.index(min_consumo)
    return carro[min_index]
  1. 确保输入函数适配测试输入格式
    如果你的entrada_carro()和entrada_consumo()还未适配单行输入(前半部分为车型,后半部分为对应油耗),可参考以下写法:
def entrada_carro():
    dados = input().split()
    # 车型数量为总数据量的一半
    qtd_carros = len(dados) // 2
    return dados[:qtd_carros]

def entrada_consumo():
    dados = input().split()
    qtd_carros = len(dados) // 2
    # 将油耗字符串转为整数列表
    return list(map(int, dados[qtd_carros:]))

验证效果

  • 测试输入1:JEEP AUDI BMW JAGUAR 10 6 8 12,economico()会返回AUDI
  • 测试输入2:CELTA GOL UP KA 10 7 6 9,economico()会返回UP

修改后,无论平台的main()如何调用economico(),函数都能自行获取所需的车型和油耗数据,避免参数缺失错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 05:15:35