从循环数据创建列表

时间:2019-11-27 04:37:27

标签: python

我有一个循环,该循环会为多个数据集生成一个表示为陷阱的数字。我正在尝试将所有陷阱编号放入一个列表中,以便能够找到它们的平均值。当我尝试将它们放入循环中时,只有循环的最后一个数字进入列表。

*通过这段代码,它实际上获取了用于应力的数据和用于应变的数据。随着数据集在循环中的变化,应力和应变也随之变化。然后,它使用梯形法则找到曲线下的面积。接下来,应将曲线下的区域放入列表中,以便我可以找到平均值,但列表中仅包含最后一个值。

for dataset in samplenums:
    data = np.array(get_data("0h UV Exposure, Roll Direction",dataset))
    moredata = np.transpose(data)
    Stress = moredata[:,1]
    Strain = moredata[:,0]

    trap = integ.trapz(Stress,Strain)
    print("The toughness calculated using trapazoidal rule for dataset", dataset, "is",trap)

    list = []
    list.append(trap)
    print(list)

2 个答案:

答案 0 :(得分:2)

按如下所示重写代码,几乎没有错误。

1-无需每次都创建新列表,因此可以在循环外部进行声明。

list = []
for dataset in samplenums:
    data = np.array(get_data("0h UV Exposure, Roll Direction",dataset))
    moredata = np.transpose(data)
    Stress = moredata[:,1]
    Strain = moredata[:,0]

    trap = integ.trapz(Stress,Strain)
    list.append(trap)
    print("The toughness calculated using trapazoidal rule for dataset", dataset, "is",trap)

    print(list)

答案 1 :(得分:0)

您每次(在循环内)都创建一个新的list,并将数据(trap)附加到其中。您需要做的是在进入循环之前创建list,然后将数据附加到循环内。