我有一个循环,它为多个数据集生成一个表示为陷阱的数字。我正在尝试将所有陷阱数字放入一个列表中,以便能够找到它们的平均值。当我尝试将它们放入循环中时,只有循环的最后一个数字进入列表。
*通过这段代码,它基本上获取了应力数据和应变数据。随着数据集在循环中的变化,应力和应变也会发生变化。然后,它使用梯形规则来查找曲线下的区域。接下来,曲线下的区域应该放到列表中,这样我就可以找到平均值,但列表中只包含最后一个值。
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)发布于 2019-11-27 13:05:30
重写你的代码如下,你有很少的错误。
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)发布于 2019-11-27 12:53:36
每次(在循环中)都会创建一个新的list,并将数据(trap)附加到它。您需要做的是在进入循环之前创建list,然后将数据附加到循环中。
https://stackoverflow.com/questions/59063086
复制相似问题