gpt4 book ai didi

julia - 奇怪的集合索引错误

转载 作者:行者123 更新时间:2023-12-04 20:42:40 24 4
gpt4 key购买 nike

我卡在这段代码上了

hdiag = zeros(Float64,2)
hdiag = [0,0]
println(hdiag)
hdiag[1] = randn()

在最后一行中,我得到了一个InexactError。这很奇怪,因为 randn() 它是一个 Float64,但出于某种原因我必须执行 hdiag=randn(2) 然后就不会有问题了。

最佳答案

行:

hdiag = [0,0]

更改 hdiag 以引用一个与之前完全不同的全新数组。在这种情况下,新数组是一个整数数组,因此对它的任何后续赋值都需要转换为整数。

索引赋值不同;它改变了现有数组的内容。因此,您可以使用 hdiag[:] = [0,0],它会更改内容,同时将整数转换为 float 。这在 0.5 版中变得更加容易,您可以在其中使用新的 .= 点分配语法来分配到现有数组中:

hdiag .= [0,0]

会做你想做的。有关数组、绑定(bind)和赋值的更多详细信息,我建议阅读这篇博文:Values vs. Bindings: The Map is Not the Territory.

关于julia - 奇怪的集合索引错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41942928/

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