Python Codecademy digital_sum

标签 python

该任务已在 codecademy Practice Makes Perfect digit_sum

需要对正数的数字进行求和。 我使用字符串方式来决定任务(不是楼层划分)。

我的代码是

def digit_sum (n):
    total = 0
    for digit in range(len(str(n))):
        total += int(n[digit])
    return total

number = raw_input("Please print a long number: ")    
print digit_sum(number)

它适用于 1001 和 434。

但是,该程序表示: 您的 digital_sum 函数是否只接受一个参数(正整数)?您的代码引发了“'int'对象没有属性'getitem'”错误。

代码运行时可能会出现什么问题?

谢谢!

最佳答案

你没有将 n 转换为字符串,所以当你调用 n[i] 时它会引发异常

def digit_sum(n):
    return sum(  int(i) for i in str(n) ) 

关于Python Codecademy digital_sum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38136544/

相关文章:

python - 根据下一行中的值连接列中的行

python - 按 Pandas 中的自定义列表排序

python - 在客户端计算机上安装和使用 python

python - 我如何让 keras 预测 one-hot 矩阵以外的东西?

python - 如何使用 WSGI 实现 Flask 应用按路径调度?

Python PIL 不正确地解码 TIFF 颜色(使用不正确的颜色空间)?

python - 使用像素坐标 (OpenCV) 在图像上绘制多个标记

python - time.sleep 与 threading.Lock 的交互