为了账号安全,请及时绑定邮箱和手机立即绑定

7-6 定义默认参数这块问题

刚开始看7-6 定义默认参数这块内容,硬是被文中的内容给懵住了,方法2是有些人想到的算平方的方法,如果要说定义默认参数,那可以在方法2中,把n给定一个数值,计算结果同1相等。

方法2 同方法1一样 都可以用 比如power(2,3)、power(2,4)这样定义一个函数。两者有什么问题,或者方法2与本文内容有什么区别或问题?


方法1:

def power(x, n=2):

    s = 1

    while n > 0:

        n = n - 1

        s = s * x

    return s


方法2:

def power2(x2, n):

    return x2**n


正在回答

4 回答

怎么说呢,编程中的一些问题 是有 多个解决方案的, 慕课的 课程呢 是有讲师个人制作上传的, 讲师本人会选择一种方案代码(不一定是最优),因为讲师不一定是 Python专家,更不一定是 算法大师。 所以 没有必要纠结 具体代码,因为这个课程主要还是介绍了 关键字参数(keyword arguments)的用法。 分心纠结 幂运算 有点 错失焦点的感觉,题主觉得呢。

0 回复 有任何疑惑可以回复我~

方法一可以有默认值一个参数:power(4)默认就是4的平方,也可以给n赋值power(4,4)

方法二就是只能两个参数

0 回复 有任何疑惑可以回复我~

方法二是直接用了指数运算符,而方法一是从指数原理出发来计算的,两者的结果肯定是一样的

0 回复 有任何疑惑可以回复我~

个人见解:

方法1:是我们自己定义的power内部的实现,效率低。

方法2:我们借用了**这个符号,这个符号的内部实现,肯定不是上面的。


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

7-6 定义默认参数这块问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信