鱼C论坛

 找回密码
 立即注册
查看: 1732|回复: 6

[已解决]代码的逻辑思路不懂

[复制链接]
发表于 2017-11-6 13:11:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
def power(x, y):
    result = 1
   
    for i in range(y):
        result *= x

    return result

print(power(2, 3))
这个代码的逻辑思路不懂,为什么要让result=1,为什么要for i in range
最佳答案
2017-11-6 13:33:01
初始化result=1 因为后面都是乘法如果不初始化那么结果不对

for 循环确定了x 乘几次
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-11-6 13:19:16 | 显示全部楼层
你好,我也是刚刚学习python,
for i in range是确定范围,这是语法!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-6 13:28:30 | 显示全部楼层
result = 1 如果没有这,
下面的result *= x 会报错,提示你 变量result 未定义,
result *= x ===> result = result*x
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-6 13:33:01 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
初始化result=1 因为后面都是乘法如果不初始化那么结果不对

for 循环确定了x 乘几次
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-6 13:36:16 | 显示全部楼层
lovesword 发表于 2017-11-6 13:28
result = 1 如果没有这,
下面的result *= x 会报错,提示你 变量result 未定义,
result *= x ===> resu ...

所以让result=1是要给它定义,而且要从1开始;然后for i in range的作用是让result *= x进入for循环,对吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-6 13:40:53 | 显示全部楼层
BngThea 发表于 2017-11-6 13:33
初始化result=1 因为后面都是乘法如果不初始化那么结果不对

for 循环确定了x 乘几次

所以range后的括号里的y是循环次数的意思啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-6 13:43:06 | 显示全部楼层
BngThea 发表于 2017-11-6 13:33
初始化result=1 因为后面都是乘法如果不初始化那么结果不对

for 循环确定了x 乘几次

我懂了,谢谢!!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-3-3 17:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表