python - 使用函数生成数字
问题描述
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
从一开始就?
谢谢
解决方案
这个代码片段,
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
数值时引发和错误。
希望能帮助到你!
推荐阅读
- anypoint-studio - 如何在 mule 4 中集中项目结构之外的应用程序属性
- php - 我想将 JSON 数据转换为数组
- javascript - window.open 与变量一起使用时转到 null url (JavaScript)
- php - 如何解决 Heroku/Laravel 中的错误 500?
- shell - unix shell - ls -d $PWD
- python - 如何在 Django 中提供用户上传的 pdf 文件?
- ios - 在 Objective-C 或 Swift 中使用 CA 层和掩码将标签移动到视图顶部
- google-cloud-pubsub - 是否可以禁用订阅者对确认消息的需求?
- reactjs - 如何在 React JSX 中渲染同一个 div 中的多个元素
- pandas - 日期为字符串时的 Pandas KeyError 日期