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

Python报错TypeError: 'int' object is not subscribable的原因咨询

错误原因分析

核心问题:d被错误初始化为一维列表而非二维列表

你代码里的初始化逻辑存在致命问题:

d=[]
for i in range(1,20):
    d=list(map(int, input().split()))

每次循环都会把d重新赋值为单次输入的一维整数列表,而非将每次输入的列表添加到d中。循环结束后,d仅保留最后一次输入的单行数据,是一个一维列表。

当后续执行d[j][y]时,d[j]取到的是列表中的某个整数元素,你试图对这个整数做下标访问([y]),自然会触发TypeError: 'int' object is not subscribable——因为整数类型不支持下标操作。

附带的其他逻辑问题

  1. Python列表索引从0开始,但你的循环使用range(1,20),会跳过第一个元素(索引0),若d长度不足19还会触发索引越界错误。
  2. 代码中else : d[j][y] ==0是比较操作,而非赋值,应改为d[j][y] = 0。
  3. 最后打印循环输出的是x,而非d中的元素,逻辑完全错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 02:12:05