如何在python

时间:2017-06-22 13:27:43

标签: python loops for-loop

m = int(raw_input());


def objective(x):  # Definining minimization function
# in function range(1,m) 1 is included and m is excluded. So effectively we go from 1 to m-1.
        first = 0.0
        second = 0.0

        for j in range(1, m):
            term_1 = 1.0
            term_2 = 0.0
            for i in range(1,m):
                term_1 -= 2*(x[i]*math.pow(math.sin(pi*i*j/m),2))
                term_2 += ((x[i])*i* math.sin(2*pi*i*j/m))



            first = first + math.pow(term_1, 2)
            second = second + math.pow(term_2, 2)

        Fmin = first + second
        return Fmin
        asum = 0.0
        for i in range (1,m):
            asum = asum - x[i]

所以我试图在python 2.7.12中对余弦系列中的术语求和。说我要总结第1,第3和第5学期,但不是第2学期或第4学期。有没有办法在for循环中指定它?如果可能的话,我希望能够改变哪些术语我不会求和。这是我的脚本的一部分,它定义了我总结的内容。我稍后会在脚本中优化此功能,但我希望能够将某些术语修复为0.就目前而言,它只是将i和j的所有内容相加

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您可以使用以下内容:

sum([value for index, value in enumerate(data) if index % 2 != 0])