python中,想要表示a的b次方时,有两种方法:
创新互联建站,为您提供网站建设公司、网站制作公司、网站营销推广、网站开发设计,对服务成都玻璃钢坐凳等多个行业拥有丰富的网站建设及推广经验。创新互联建站网站建设公司成立于2013年,提供专业网站制作报价服务,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏心悦目的作品。 与客户共同发展进步,是我们永远的责任!
1,math.pow()这个内置函数
2,**运算符
这两种方法效果是一样的,但是当
b为分数,a为负数:当幂运算符的底数为负数、幂为分数时,Python会抛出ValueError: negative number cannot be raised to a fractional power异常,
这时有两种方法可以解决此问题:
1,底数a正负均可不影响你的算法的话,加一个绝对值就行了即abs(a);
2,如果底数a必须是正、或必须是负的话,需要采用复数进行运算。因此凡是遇到幂为分数的项,都将底数用complex()转换为复数。
推荐学习《python教程》。
这个if y 的意思就是如果y的值仍然大于0的话,X的y次幂就等于x*x的Y-1次幂。
举例子说,要计算x三次方
x^3=x*x^2
=x*x*x^1
=x*x*x*x^0
=x*x*x*1
=x*x*x
按照你的题意和输出代码来看,递归代码如下:
代码
运行结果从1024到1结束
运行结果