You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写partition_pts函数将区间[a,b]拆分为n个等距子区间

partition_pts 函数实现修正方案

原代码问题分析

  • 步长参数设置错误:将range的步长设置为n+1,完全不符合等距分割的步长逻辑,导致生成的点间隔错误
  • 区间闭合逻辑错误:range本身为左闭右开区间,原代码将结束值设置为b*n,永远无法取到右端点b对应的数值
  • 兼容性差:原实现依赖a、b为整数的前提,若传入浮点型端点会直接报错,适用场景受限

正确实现逻辑

n个等距子区间对应n+1个端点,每个端点的计算公式为:a + k * (b-a)/n,其中k的取值范围是0 ≤ k ≤ n

修正后代码

def partition_pts(a,b,n):
    step = (b - a) / n
    return [a + k * step for k in range(n + 1)]

结果验证

调用partition_pts(-1, 2, 6),返回结果为[-1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0],完全符合预期。

内容的提问来源于stack exchange,提问作者Averyf00350

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 21:45:03