在python上我有两个基本列表
xvales = [2, 4, 6, 8, 10, 12]
yvales = [100, 95, 90, 85, 80, 75]
sumation = 0
如何使用for循环并从每个列表中提取相应的值以在公式中使用。第一次迭代i = 2且j = 100。第二次迭代i = 4且j = 95。第三次迭代i = 6且j = 90。我想你明白我在做什么。 我确实尝试过这样做。
For i in xvales and j in yvales:
v = i **2 / ( j+1 )
sumation += v
答案 0 :(得分:2)
total = sum(i**2 / (j+1) for i,j in zip(xvalues, yvalues))
答案 1 :(得分:1)
使用zip
>>> zip(xvales, yvales)
[(2, 100), (4, 95), (6, 90), (8, 85), (10, 80), (12, 75)]
然后,循环它,然后总结:
sumation = sum(i **2 / ( j+1 ) for i, j in zip(xvales, yvales))
但是,您可能需要浮点除法,否则会产生2
:
sumation = sum(i **2 / float( j+1 ) for i, j in zip(xvales, yvales))
# 4.475365812518561
答案 2 :(得分:0)
答案 3 :(得分:0)
我认为这样做
xvales = [2, 4, 6, 8, 10, 12]
yvales = [100, 95, 90, 85, 80, 75]
summation = sum([i ** 2 / (j+1) for i,j in zip(xvales, yvales)])