gpt4 book ai didi

python - 查找列表的 "centered average"

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:31:00 27 4
gpt4 key购买 nike

“返回整数列表的“居中”平均值,我们会说这是值的平均平均值,除了忽略列表中的最大值和最小值。如果最小值有多个副本,只忽略一个副本,对于最大值也是如此。使用整数除法产生最终平均值。您可以假设列表的长度为 3 或更多。”

这是我在家庭作业中遇到的一个问题,我对如何找到最大/最小的数字并将它们从列表中删除感到困惑。这是我到目前为止所拥有的。它适用于 10/14 我必须通过的场景。我认为这只是因为它捕获了中位数

def centered_average(nums):
x = 0
for i in range(len(nums)):
x = i + 0
y = x + 1
if y%2 == 0:
return (nums[y/2] + nums[(y/2)+1]) / 2
else:
return nums[y/2]

最佳答案

排序数组当然是更简洁的代码,这里有一个手动循环的替代方法

    max_value = nums[0]
min_value = nums[0]
sum = 0
for x in nums:
max_value = max(max_value, x)
min_value = min(min_value, x)
sum += x

return (sum - max_value - min_value) / (len(nums) - 2)

这只是添加所有内容并删除最后的最大值和最小值。

关于python - 查找列表的 "centered average",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34184200/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com