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

Python3作业问题:循环返回变量时需两次输入才输出

问题修复方案

你的代码核心问题出在output_names函数里——你没有使用传入的doggo_names列表,反而再次调用了get_doggo_names()函数,这直接导致程序触发第二次输入流程。

修复后的完整代码

def main():
    doggo_names = get_doggo_names()
    output_names(doggo_names)

def get_doggo_names():
    name = ''
    names = []
    while name != 'DONE':
        name = input('Name of doggo: ')
        if name != 'DONE':
            names.append(name)
    
    return names

def output_names(doggo_names):
    print()
    # 遍历主函数中已收集好的名字列表,而非重新触发输入
    for name in doggo_names:
        print(f"{name} is awesome.")

main()

关键修改点

  • 把output_names里的for names in get_doggo_names()改为for name in doggo_names,直接复用已经收集到的名字数据
  • 用f-string优化打印格式,避免原代码中end参数的错误写法,让输出逻辑更清晰

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 07:52:35