Python 计算列表中相邻余弦值之间的差值

Python 计算列表中相邻余弦值之间的差值,python,Python,我想找出余弦函数值的差​​价值观​​1至10。 因此: 这个简单的脚本打印n=1到10的余弦值,现在我需要确定各个值之间的差异​​从n=2的值中取,从n=1的值中取读数,然后取n=3和n=2的值 因此: 最后 Math.cos (10) - Math.cos (1) 然后我想把这些值加起来​​... 但是我已经准备好了,也许我会做一些类似的事情: for x,y in zip(range(2,11)+[10],range(1,10)+[1]): print math.cos(x) -

我想找出余弦函数值的差​​价值观​​1至10。 因此:

这个简单的脚本打印n=1到10的余弦值,现在我需要确定各个值之间的差异​​从n=2的值中取,从n=1的值中取读数,然后取n=3和n=2的值 因此:

最后

Math.cos (10) - Math.cos (1)

然后我想把这些值加起来​​... 但是我已经准备好了,也许我会做一些类似的事情:

for x,y in zip(range(2,11)+[10],range(1,10)+[1]):
    print math.cos(x) - math.cos(y)

当然,这只适用于python2.x,其中
range
返回一个列表。要解决这个问题,可以使用
itertools.chain
。i、 e.:
range(2,11)+[10]
变成
chain(range(2,11),[10])
。这里要学习的关键功能是

您可以使用多个
循环在一起,如下所示:

for x in range(1, 11):
    for y in range(1, 11):
        print("x is %s, y is %s" % (x, y))
未经测试:

import math

cosines = map(math.cos, xrange(1, 11))
cosines.append(cosines[0])

from operator import sub
print map(sub, cosines[1:], cosines[:-1])

@BenjaminGruenbaum,@TylerCrompton我读到,我认为如果是家庭作业,人们试图帮助用户理解逻辑,而不是仅仅回答问题,最终问题会得到回答,但OP会学到更多,我认为双方都从交流中受益。不清楚你到底在问什么,但假设我理解正确,最终结果总是
2*Math.cos(1)
,因此
n>1
。我认为这在最终元素上的符号是错误的(尽管OP的要求有点古怪)+1用于避免一堆重新计算。
for x in range(1, 11):
    for y in range(1, 11):
        print("x is %s, y is %s" % (x, y))
import math

cosines = map(math.cos, xrange(1, 11))
cosines.append(cosines[0])

from operator import sub
print map(sub, cosines[1:], cosines[:-1])
from math import cos

cosines = [cos(i) for i in range(1,11)]

print [b-a for a,b in zip(cosines, cosines[1:]+cosines[0])]