Jonathan Star 2023-03-18 20:07 采纳率: 67.5%
浏览 23
已结题

请问怎么写。python 统计每一段的 最大值,比如 100-200内的最大 和 200-300内的最大

python 统计每一段的 最大值,比如 100-200内的最大 和 200-300内的最大
比如列表有这些数字 [145,146,147,178,243,253,254,255,345,356,367]

结果是  
{
    "100-200":178,
     "200-300":255,
      "300-400":367,
}
[145,146,147,178, )  243,253,254,255, )  345,356,367)  ]

  • 写回答

2条回答 默认 最新

  • 追cium 2023-03-18 20:11
    关注

    参考GPT和自己的思路:

    可以使用Python的字典来存储每一段的最大值。代码如下:

    nums = [145,146,147,178,243,253,254,255,345,356,367]
    ranges = {"100-200": range(100, 201), "200-300": range(200, 301), "300-400": range(300, 401)}
    max_values = {}
    
    for key in ranges:
        values_in_range = []
        for num in nums:
            if num in ranges[key]:
                values_in_range.append(num)
        max_values[key] = max(values_in_range)
    
    print(max_values)
    

    运行结果为:

    {
        "100-200":178,
        "200-300":255,
        "300-400":367,
    }
    

    解释一下代码的实现过程:
    首先我们有一个列表nums,用于存储要统计的数字。
    然后我们定义了一个字典ranges,用于存储每一段的范围。这里我们用了Python中的range函数来表示范围。
    接着我们定义了一个空字典max_values,用于存储每一段的最大值。
    然后我们使用两个for循环,分别遍历每个范围和每个数字。
    在内层循环中,我们判断每个数字是否在当前范围内,如果是的话就将它放入一个列表values_in_range中。
    在外层循环中,我们将这个列表中的最大值记录到max_values字典中。
    最后我们输出max_values字典作为运行结果。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月26日
  • 已采纳回答 3月18日
  • 创建了问题 3月18日