gpt4 book ai didi

export - Julia:如何将文件 A 的所有变量探索到文件 B 中?

转载 作者:行者123 更新时间:2023-12-01 13:38:24 24 4
gpt4 key购买 nike

我有几个关于 Julia 的问题。我做了一些在线挖掘,但找不到任何答案。如果我有一个文件 nameA.jl,它有很多变量(例如,物理常数,如质子的质量),当我需要在另一个文件中使用时,如何轻松导出/调用所有这些变量(即, 姓名 B.jl)。

其次,通过“类”(我知道 Julia 没有类似于 Python 的类概念)或其他方式创建某种“全局”变量的最佳方法是什么,因此我可以轻松访问项目中的任何其他文件并根据需要进行修改。

我确实尝试从谷歌获得这些答案,但找不到任何帮助。

谢谢

最佳答案

对于你的第一个问题:

物理常数.jl

module PhysicalConstants

export fine_structure_constant, proton_electron_massratio

const fine_structure_constant = 7.2973525664e-3
const proton_electron_massratio = 1836.15267247

end # module

使用PhysicalConstants.jl
 importall PhysicalConstants

this = fine_structure_constant * proton_electron_massratio

# 13.399053416751173

据我了解你的第二个问题:

ChangeableValues.jl
module ChangeableValues

export changeable_value, change_value, value

type Changeable{T}
value::T
end

typeof_value{T}(x::Changeable{T}) = T
value{T}(x::Changeable{T}) = x.value

# changeable_value is const for speed
# changeable_value.value is not const
const changeable_value = Changeable(0)

function change_value{T}(new_value::T)
if T == typeof_value(changeable_value)
changeable_value.value = new_value
else
throw(TypeError())
end
return nothing
end


end # module

UseChangeableValue.jl
   import ChangeableValues: changeable_value, change_value, value

println("value = ", value(changeable_value)) # 0
change_value(1)
println("value = ", value(changeable_value)) # 1
change_value(2)
println("value = ", value(changeable_value)) # 2

# it remains 2 when imported elsewhere until it is changed again

关于export - Julia:如何将文件 A 的所有变量探索到文件 B 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42310999/

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