A.Y*_*iha 5 parameter-passing julia
我想知道是否可以将参数传递给include("file.jl"). 例如,我们解析 中的 ARGSfile.jl并在那里使用它们。类似于我们在命令行中传递参数的操作。
重新分配ARGS以使其file.jl认为它收到了参数是可行的,但会导致警告(因为它覆盖了Base.ARGS)。更好的方法也许是在使用inisdefined之前检查不同的参数源。ARGSfile.jl
例如,文件main.jl将是:
newARGS = String["adios","amigos"]
include("file.jl")
Run Code Online (Sandbox Code Playgroud)
并且file.jl将是:
localARGS = isdefined(:newARGS) ? newARGS : ARGS
@show localARGS
Run Code Online (Sandbox Code Playgroud)
现在:
$ julia file.jl hello world
localARGS = String["hello","world"]
$ julia main.jl
localARGS = String["adios","amigos"]
Run Code Online (Sandbox Code Playgroud)
这也允许通过多个层次的包容性进行更深入的沟通。