对数与指数操作:pow,log,sqrt,exp

Python内容的x**y可以进行指数运算,比如2**3=8。有时候我们需要以参数的方式进行指数计算,这时我们可以使用pow函数,比如:

import  math
for x ,in  [ ( 2 , 3 ) , ( 2.1 , 3.2 ) , ( 1.0 , 5 ) , ( 2.0 , 0 ) ,
     ( 2 , float ( 'nan' ) ) , ( 9.0 , 0.5 ) , ( 27.0 , 1.0/ 3 ) , ]:
     print  '{:5.1f} ** {:5.3f}={:6.3f}'. format (x ,y , math. pow (x ,y ) )

其输出结果为:

  2.0 ** 3.000= 8.000
  2.1 ** 3.200=10.742
  1.0 ** 5.000= 1.000
  2.0 ** 0.000= 1.000
  2.0 **   nan=   nan
  9.0 ** 0.500= 3.000
  27.0 ** 0.333= 3.000

由于平方非常常用,所有Python中提供了一个sqrt函数用于计算某个数的平方根,注意:不能计算一个负数的平方根:

import  math
print  math. sqrt ( 9.0 )
print  math. sqrt ( 3 )
try:
     print  math. sqrt (- 1 )
except  ValueError ,err:
     print  'Cannot compute sqrt(-1):' ,err

其输出结果为:

3.0
1.73205080757
Cannot compute sqrt (-1 ): math domain error

我们还可以求一个数的对数,使用log,比如下面的代码:

import  math
print  math. log ( 8 )
print  math. log ( 8 , 2 )
print  math. log ( 0.5 , 2 )

其输出结果为:

2.07944154168
3.0
-1.0

Python中提供了一个exp用于进行自然对数e的指数运算:

import  math
x = 2
fmt = '%.20f'
print fmt %  ( math. e** 2 )
print fmt %  math. pow ( math. e , 2 )
print fmt %  math. exp ( 2 )

其输出结果为:
7.38905609893064951876
7.38905609893064951876
7.38905609893065040694

转自:http://www.onepub.net/%E5%AF%B9%E6%95%B0%E4%B8%8E%E6%8C%87%E6%95%B0%E6%93%8D%E4%BD%9Cpowlogsqrtexp.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值