【发布时间】:2019-01-27 18:03:19
【问题描述】:
我正在使用 Python 进行作业,但不理解我的代码存在的问题。
根据 Stack Overflow 上的其他答案,答案似乎是:
def digit_sum(number):
return (sum(int(digit) for digit in str(number)))
我的代码(如下)不起作用。为什么不呢?
def digit_sum(number):
for digit in str(number):
return sum(int(digit))
【问题讨论】:
-
当你给它
return关键字时,函数的标准行为是什么? -
第一个版本首先将所有单个数字转换为整数类型,然后求和。而在第二个版本中,您将 return 语句放在 for 循环中。因此,一旦您将第一个数字转换为整数,您的函数就会将控件返回到进行函数调用的位置。
标签: python loops sum integer digits