对 int 的每个数字求平方的方法不起作用

Method to square every digit of an int not working

def square_digits(num):
    x = 0
    for i in str(num):
        y = int(i) * int(i)
        x += y 
    return x

上面的代码应该对整数的每个数字进行平方并将传入的数字连接起来,但它并没有这样做。 我 运行 belpow 代码,它给出输出 164.

square_digits(9119)

如果要输出811181,需要将x改为字符串:

def square_digits(num):
    x = ''
    for i in str(num):
        y = int(i) * int(i)
        x += str(y) 
    return x

答案为真:
9*9 + 1*1 + 1*1 + 9*9 = 81 + 1 + 1 + 81 =164