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

为何代码报错TypeError: 'int' object is not subscriptable?附代码求助

问题原因与修复方案

问题解释

你把输入的两位数转换成了整数类型nmbr_1,但整数不属于可通过[索引]访问元素的序列类型——只有字符串、列表这类有序集合才能用下标取值,所以代码里写nmbr_1[0]、nmbr_1[1]会触发TypeError: 'int' object is not subscriptable错误。

两种修复方法

方法1:保留字符串形式拆分后转整数

先获取字符串格式的输入,通过索引取数位字符再转成整数相加:

nmbr_str = input("Enter a two digit number: ")
a = int(nmbr_str[0])
b = int(nmbr_str[1])
print(a + b)

方法2:用数学运算拆分整数数位

通过整除和取余操作直接从整数中拆分出十位和个位:

nmbr_1 = int(input("Enter a two digit number: "))
a = nmbr_1 // 10  # 整除10得到十位数字
b = nmbr_1 % 10   # 取余10得到个位数字
print(a + b)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 05:44:57