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

Python连续使用input语句无法接收输入,报ValueError如何解决?

问题分析与解决

异常原因

这个ValueError的核心是第二个input()读取到了空字符串,无法转换成整数。出现这种差异的原因是你的IDE和在线编译器的标准输入处理逻辑不同:

  • 在线编译器通常模拟终端的逐行输入逻辑,输入一个值回车后,程序会继续等待下一个输入;
  • 部分IDE(或配置不当的IDE)会要求你在运行前一次性提供所有输入内容,若只输入第一个值就触发运行,第二次input()会读取到空内容;或是输入时不小心产生了多余空行,被第二个input()读取。

解决办法

  • 一次性提供所有输入:在IDE的输入窗口里,先输入第一个整数,按回车换行,再输入第二个整数,然后启动程序(部分IDE需要在运行前就把这两行输入填好)。
  • 添加输入校验:修改代码,确保输入不为空再转换,同时加上提示文本避免混淆:
    a = int(input("输入第一个数: "))
    # 确保第二个输入有效
    while True:
        c_str = input("输入第二个数: ")
        if c_str.strip():
            c = int(c_str)
            break
        print("输入不能为空,请重新输入")
    print(a + c)
    
  • 调整IDE配置:以PyCharm为例,打开运行配置(Run > Edit Configurations),勾选Emulate terminal in output console选项,IDE会模拟终端的逐行输入行为,和在线编译器逻辑一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 07:20:36