Python数学问题

时间:2013-03-23 08:37:47

标签: python

我在python中的平均水平,甚至在数学上都没有。

等式y = 122.32e-0.31x可用于计算网页负载与其他网页负载相比的速度。因此,在5秒内加载的网站比25%的网站快。

Y是更快的百分比,x是以秒为单位的页面加载。

此数据可在此处找到 - http://www.seomoz.org/blog/site-speed-are-you-fast-does-it-matter

要将此转换为python,我尝试了以下内容:

import math
# y = 122.32e-0.31x
y = (122.32*math.e)**(-0.31 * page_load_time)

似乎不对。任何人都可以更正代码吗?

2 个答案:

答案 0 :(得分:3)

import math
y = 122.32*math.exp(-0.31*page_load_time)

应该做你想做的事情

答案 1 :(得分:1)

等式为y = 122.32e -0.31x

在python中,它将是:

y = 122.32*math.e**(-0.31*x)

我做了一些时间测量:

>>> t = timeit.Timer('for i in l : e**i', setup = 'from math import e; l = range(10,50)')
>>> t.timeit()
23.76981210708618
>>> t2 = timeit.Timer('for i in l : exp(i)', setup = 'from math import exp; l = range(10,50)')
>>> t2.timeit()
13.754070043563843
>>> t.timeit()
23.382396936416626
>>> t2.timeit()
13.842521905899048

两种方法的实现似乎都不同,如@MrDave所提及的math.exp快于math.e