Julia中如何快速创建0到20步长为0.5的递增向量
Julia 生成0到20、步长0.5的等差向量方法
最快捷的方式是直接使用Julia原生的范围语法,不需要加载任何第三方包:
- 惰性范围(性能最优,无额外内存开销):直接写
0:0.5:20
这个表达式生成的是StepRange类型的等差序列,支持普通向量的所有索引、迭代、广播运算操作,做数值计算时会有专门的编译优化,绝大多数场景下不需要转成实体数组就可以直接用。 - 如果你需要得到存储了具体值的实体
Vector类型,只需要在外层套collect()函数即可:collect(0:0.5:20)
运行后输出的序列完全匹配你需要的[0, 0.5, 1, 1.5, ..., 20]结构,首尾值准确,步长严格为0.5。 - 等价的函数写法:你也可以用
range函数指定参数生成,效果和上面的范围语法完全一致:range(start=0, step=0.5, stop=20)
同样,需要实体向量就加collect()包裹。
提示:不要手动写循环逐次调用
push!元素生成这类规则序列,原生范围构造是Julia里实现这类需求性能最高的写法。
内容的提问来源于stack exchange,提问作者Josie G
相关产品推荐
相关产品推荐

