1
我必須使用列表的循環計算標準偏差。 這是我有:如何使用Python上的循環計算標準偏差
elif user_option == 2:
stdev= 0
average = 0
for val in scores_list:
diffsquared= (val - average)**2
sum_diffsquared= diffsquared + val
stdev= ((sum_diffsquared)/num_scores)**(1/2)
print(stdev)
我一直在得到錯誤的數字。
我所做的是我在elif語句之前計算了elif語句中的平均值。但由於某種原因,它說「平均」未定義 – user300
您必須計算相應的'if'語句之前的平均值。您應該熟悉變量範圍的概念(http://en.wikipedia.org/wiki/Scope_(computer_science))。總之,你的變量「平均值」對於'elif'範圍是未定義的。如果您在'if/elif'語句之前聲明「平均值」,則該變量仍將通過所有'if/elif'範圍可見。 – andrew