Syslab 中索引报错:ERROR: ArgumentError: invalid index: XXX of type Float64
技术分享
发布于 2025-07-22 14:45:01
查看 1过去315天
上述报错导致的原因是索引值不是整形,而是浮点型,因此出现报错:
以下面错误代码为例:
A = [1 2; 3 4]
(index,) = findmin(A)
c = 2.0
A[index + c]
1.运行上述代码,在命令行中输入:
index + c
2.可以看到此时代码报错,这是由于“index + c”的值为浮点值“3.0”:

3.将上述代码修改为以下:
A = [1 2; 3 4]
(index,) = findmin(A)
c = 2.0
#A[index + c]
A[Int(index + c)] #在索引前,将索引值转为整形
4.运行上述代码,可以看到得到了正确结果:

所属专栏:Syslab基础平台
产品信息:Syslab科学计算环境