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

Python:整数解析触发TypeError,需实现两位数各位数字求和

解决两位数各位数字求和的Python代码错误问题

原代码

two_digit_number = input()
yellow = int(two_digit_number)
print(type(yellow))
print(str(yellow[1]))

报错信息

<class 'int'>
Traceback (most recent call last):
  File "main.py", line 8, in <module>
    print(str(yellow[1]))
TypeError: 'int' object is not subscriptable

错误原因

你将输入的字符串转为整数yellow后,试图用下标[1]访问它的第二位——但整数类型不支持下标访问,只有字符串、列表这类可迭代对象才能通过下标取值。

修正方案

这里提供两种可行的实现方式:

方案1:直接操作输入字符串(适合确定输入为两位数的场景)

输入本身是字符串,直接取两个字符转整数求和即可:

two_digit_number = input().strip()
sum_digits = int(two_digit_number[0]) + int(two_digit_number[1])
print(sum_digits)

方案2:数学运算拆分整数(通用型方案)

通过整除和取余操作拆分十位和个位,不需要依赖字符串下标,更灵活:

two_digit_number = input().strip()
num = int(two_digit_number)
sum_digits = (num // 10) + (num % 10)
print(sum_digits)

两种方案输入34都会输出7,满足需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 18:13:14