你好,
我在编码练习题中遇到问题,我必须创建一个函数来将两个数字的第一位相加。在此函数中,我尝试执行 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() 部分。
答案 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 次幂的除法以获得您想要的正确数字