用函数求一个正整数的位数及各个数字之和

img


我该怎么改才能符合题意并且运行?是函数定义后面的代码出了问题吗?哪一行?

函数返回值改为return [len(a), b]

可以这样写:

def fun1(num):
    res = 0
    for i in str(num):
        res += int(i)
    return len(str(num)),res  #这样子返回值,就为tuple类型

看一看你的函数返回值。这里你用的是一个整数变量,但是在输出的时候却用了[0][1]这类数组的方式来调用,这要不报错才奇怪。