首页 > 解决方案 > 使用函数生成数字

问题描述

def generate(num):
    res = 0
    for i in str(num):
       res = res + int(i)
    return res + num

我正在查看某人生成数字的代码,但我不明白他为什么使用“str(num)”将 i 迭代为 num。然后他再次将 str(i) 转换为 int(i)。

这背后的意图是什么?为什么我们不能创造

def generate(num):
    res = 0
    for i in num:
       res = res + i
    return res + num

从一开始就?

谢谢

标签: pythonfunction

解决方案


这个代码片段,

def generate(num):
    res = 0
    for i in str(num):
       res = res + int(i)
    return res + num

假设 num 是一个numerical值并将给定数字的各个数字相加以产生res,然后将其添加res到数字本身,因此,当您调用generate(123)它时,将(1 + 2 + 3) + 123产生129


第二个代码片段在num数值时引发和错误。

希望能帮助到你!


推荐阅读