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

Python二维数组输入异常:带提示input正常,无提示input报错

为何修改input()参数后出现ValueError异常?

问题场景

原本可正常运行的Python二维数组输入代码:

N = int(input("Input the N: "))

MATRIX = [0] * N
for i in range(N):
    MATRIX[i] = [0] * N
print(MATRIX)

print(" ")
for i in range(N):
    for j in range(N):
        z = int(input(" "))
        MATRIX[i][j] = z

print(MATRIX)

将第11行的z = int(input(" "))改为z = int(input())后,程序抛出异常:

Traceback (most recent call last):
  File "C:\Users\Сырым\PycharmProjects\pythonProject\main.py", line 11, in <module>
    z = int(input())
ValueError: invalid literal for int() with base 10: ''

异常原因

  • 使用input(" ")时,括号内的空格会作为提示文本输出在控制台,明确提示输入位置,你输入数字时不会误输入空内容。
  • 改成input()后,控制台没有任何提示信息,容易出现误操作:比如还没输入数字就按了回车,或者复制输入内容时带了空行,导致input()返回空字符串''。而Python的int()函数无法将空字符串转换为整数,因此触发ValueError异常。

内容的提问来源于stack exchange,提问作者Сырым

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 07:20:28