Int 对象不可下标?

时间:2021-04-09 02:13:15

标签: python python-3.x

enter image description here

你好,

我在编码练习题中遇到问题,我必须创建一个函数来将两个数字的第一位相加。在此函数中,我尝试执行 num1[0]num2[0] 来获取每个数字的第一个数字,然后将其转换为整数,但我总是被告知 int 不可下标。这里有什么问题吗?

def get_funny_sum(num1, num2):
 num1 = int(num1[0])
 num2 = int(num2[0])
 sum = num1 + num2
 return sum

对于这个练习,我不做 get_funny_sum() 部分,只做 def get_funny_sum() 部分。

enter image description here

1 个答案:

答案 0 :(得分:2)

Subscriptable 表示对象实现了 __getitem__() 方法。换句话说,它适用于作为其他对象的“容器”的对象;例如字符串、列表、元组或字典。

数字不能这样访问,可以尝试将其转换为字符串,然后访问第一个位置,然后将其转换回int进行求和运算,这有点过于复杂了:

def get_funny_sum(num1, num2):
    num1 = str(num1)
    num2 = str(num2)
    acc = int(num1[0]) + int(num2[0])
    return acc

print(get_funny_sum(23, 45))

或者尝试执行 10 次幂的除法以获得您想要的正确数字