从浮点数python列表生成均值列表

vir*_*yte 1 list mean python-3.x

我正在尝试编写将在两个列表中使用浮点数的简单代码,找到每个列表中相同位置的两个数字之间的平均值,并使用更新的方法生成新列表.例如,使用list_1list_2,

list_1: [1.0, 2.0, 3.0, 4.0, 5.0]
list_2: [6.0, 7.0, 8.0, 9.0, 10.0]
list_3: []

for i in list_1:
    for x in list_2:
        list_3.append((x+i)/2)
print (list_3)
Run Code Online (Sandbox Code Playgroud)

在两个列表中找到浮动之间的平均值并创建一个新列表,以便:

list_3 = [3.5, 4.5, 5.5, 6.5, 7.5]
Run Code Online (Sandbox Code Playgroud)

我尝试创建一个for循环,但(由于显而易见的原因)不会迭代我想要的方式.该输出是:

[3.5, 4.0, 4.5, 5.0, 5.5, 4.0, 4.5, 5.0, 5.5, 6.0, 4.5, 5.0, 5.5, 6.0, 6.5, 5.0, 5.5, 6.0, 6.5, 7.0, 5.5, 6.0, 6.5, 7.0, 7.5]
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激!

Ste*_*uch 5

您可以使用生成器表达式执行此操作,例如:

码:

[sum(x)/len(x) for x in zip(list_1, list_2)]
Run Code Online (Sandbox Code Playgroud)

怎么样:

该功能zip()允许同时轻松迭代多个列表.从那里可以将这些值输入sum()len()如图所示.

测试代码:

list_1 = [1.0, 2.0, 3.0, 4.0, 5.0]
list_2 = [6.0, 7.0, 8.0, 9.0, 10.0]

list_3 = [sum(x)/len(x) for x in zip(list_1, list_2)]
print(list_3)
Run Code Online (Sandbox Code Playgroud)

结果:

[3.5, 4.5, 5.5, 6.5, 7.5]
Run Code Online (Sandbox Code Playgroud)