鱼C论坛

 找回密码
 立即注册
查看: 434|回复: 7

[已解决]关于小甲鱼第17讲第一题的一个小问题

[复制链接]
发表于 2020-4-20 17:06:50 | 显示全部楼层 |阅读模式

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

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

x
def power(x, y):
    result = 1
   
    for i in range(y):
        result *= x     #它这里循环了3次分别是2,2,2

    return result    #它这里不应该返回  2 吗

print(power(2, 3)
最佳答案
2020-4-20 17:12:59
result *= x 是 result = result * x 的简写
每次乘x之后result的值会改变的
第一次循环后,result=1*2=2
第二次循环后,result=2*2=4
第三次循环后,result=4*2=8
所以最后返回的是8
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-20 17:11:45 | 显示全部楼层
并不是,1 * 2 * 2 * 2 难道等于 2 ?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-20 17:12:59 | 显示全部楼层    本楼为最佳答案   
result *= x 是 result = result * x 的简写
每次乘x之后result的值会改变的
第一次循环后,result=1*2=2
第二次循环后,result=2*2=4
第三次循环后,result=4*2=8
所以最后返回的是8
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-20 17:14:13 | 显示全部楼层
result 在变:
本轮result * x = 下轮result
1 x 2 = 2
2 x 2 = 4
4 x 2 = 8
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-20 17:14:28 | 显示全部楼层
zltzlt 发表于 2020-4-20 17:11
并不是,1 * 2 * 2 * 2 难道等于 2 ?

他循环了三次,不应该是每次循环都是2 吗,他们3次循环为什么会加在一起
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-20 17:14:51 | 显示全部楼层
是 result *= x 不是 result = x 啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-20 17:16:13 | 显示全部楼层
sunrise085 发表于 2020-4-20 17:12
result *= x 是 result = result * x 的简写
每次乘x之后result的值会改变的
第一次循环后,result=1*2=2 ...

懂了懂了我擦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-20 17:23:27 | 显示全部楼层
zltzlt 发表于 2020-4-20 17:14
是 result *= x 不是 result = x 啊

懂了谢谢大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-26 16:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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