2 回答

TA貢獻(xiàn)1799條經(jīng)驗 獲得超8個贊
問題是您在每次迭代中都保存了一個項目的列表。相反,您可以使用生成器并將其提供給像這樣的中值和模式。
median_size = median(stats['weight']/stats['height'] for stats in body_stats)
mode_size = mode(stats['weight']/stats['height'] for stats in body_stats)

TA貢獻(xiàn)1900條經(jīng)驗 獲得超5個贊
您需要將每個項目附加到列表中。您目前正在使用這條線做什么:
size = [stats['weight']/stats['height']]
每次都創(chuàng)建一個包含單個元素的新列表。每次循環(huán)運(yùn)行時,它都會用單元素列表覆蓋大小變量
你需要做的是
from statistics import median
from statistics import mean
size = [] # create a "size" variable that is the list type
for stats in body_stats:
size.append(stats['weight']/stats['height']) # append the calculation
median_size = median(size)
mode_size = mode(size)
print(mode_size, median_size)
添加回答
舉報