使用argparse在julia中通过终端传递参数的正确方法是什么?

使用argparse在julia中通过终端传递参数的正确方法是什么?,julia,argparse.jl,Julia,Argparse.jl,我想在julia中使用argparse传递参数,但我遇到了问题 using ArgParse function parse_commandline(args) s = ArgParseSettings() @add_arg_table s begin "--hour" help = "value in hour" arg_type = Float64 required = true #default = 0 "--m

我想在julia中使用argparse传递参数,但我遇到了问题

using ArgParse
function parse_commandline(args)
s = ArgParseSettings()
@add_arg_table s begin
    "--hour"
        help = "value in hour"
        arg_type = Float64
        required = true
        #default = 0
    "--minute"
        help = "value in minute"
        arg_type = Float64
        required = true
        #default = 0
    "--second"
        help = "value in second"
        arg_type = Float64
        required = true
        #default = 0    
end
return parsed_args(args, s)
end

pa = parse_commandline()

function ConvRAToDeg(hour, minutes, second) 
    return (hour + minutes/60  + second/3600)*15
end

h = pa["hour"]
m = pa["minute"]
s = pa["second"]

RA = ConvRAToDeg(h, m, s)
println(RA)
我得到以下错误: 错误:LoadError:MethodError:没有与parse_commandline()匹配的方法 最接近的候选人是: 解析/home/usuario/practice\u julia propertion.jl:6 in include\u from\u node1(::String)at./loading.jl:488中的命令行(!Matched::Any) 进程中的_选项(::Base.jl选项)位于./client.jl:265 在_start()中./client.jl:321
加载/home/usuario/practice_julia/ProperMotion.jl时,在第27行开始的表达式中,下一个代码正常工作

function ConvRAToDeg(hour, minutes, second)
return (hour + minutes/60  + second/3600)*15
end

using ArgParse
function parse_commandline(args)
    s = ArgParseSettings()
    @add_arg_table s begin
        "--h"
            help = "value in hour"
            arg_type = Float64
            required = true
            #default = 0
        "--m"
            help = "value in minute"
            arg_type = Float64
            required = true
            #default = 0
        "--s"
            help = "value in second"
            arg_type = Float64
            required = true
            #default = 0    
    end
    pa = parse_args(args, s)
    h = pa["h"]
    m = pa["m"]
    s = pa["s"]
    RA = ConvRAToDeg(h, m, s)
    println(RA)
end
parse_commandline(ARGS)

下一个代码工作正常

function ConvRAToDeg(hour, minutes, second)
return (hour + minutes/60  + second/3600)*15
end

using ArgParse
function parse_commandline(args)
    s = ArgParseSettings()
    @add_arg_table s begin
        "--h"
            help = "value in hour"
            arg_type = Float64
            required = true
            #default = 0
        "--m"
            help = "value in minute"
            arg_type = Float64
            required = true
            #default = 0
        "--s"
            help = "value in second"
            arg_type = Float64
            required = true
            #default = 0    
    end
    pa = parse_args(args, s)
    h = pa["h"]
    m = pa["m"]
    s = pa["s"]
    RA = ConvRAToDeg(h, m, s)
    println(RA)
end
parse_commandline(ARGS)

您似乎没有将参数传递给
pa=parse\u commandline()
。您需要将
parse\u commandline()
替换为
parse\u commandline(ARGS)
。您似乎没有将参数传递给
pa=parse\u commandline()
。您需要将
parse\u commandline()
替换为
parse\u commandline(ARGS)