Julia 朱利安将位置参数、关键字参数和默认参数组合起来并记录它们的方法是什么?

Julia 朱利安将位置参数、关键字参数和默认参数组合起来并记录它们的方法是什么?,julia,Julia,我对一个函数感兴趣,该函数可以提示用户输入位置、关键字和默认参数,即“Julian”。我还希望文档是“朱利安” 这个例子就是我到目前为止想到的: """ ask([prompt::String="prompt> "] [kw_prompt::String=""])::String Prompt user for input and read and return a string from `stdin`. If keyword argument, `kw_prompt`, i

我对一个函数感兴趣,该函数可以提示用户输入位置、关键字和默认参数,即“Julian”。我还希望文档是“朱利安”

这个例子就是我到目前为止想到的:

"""
    ask([prompt::String="prompt> "] [kw_prompt::String=""])::String

Prompt user for input and read and return a string from `stdin`.

If keyword argument, `kw_prompt`, is supplied, it will be the prompt.

If positional argument, `prompt`, is supplied, it will be the prompt.

If no parameter is supplied, the prompt will be "prompt> ".

# Examples
```julia_repl
julia> ask()
prompt> test
"test"

julia> ask("My prompt: ")
My prompt: test
"test"

julia> ask(kw_prompt="A long prompt >>> ")
A long prompt >>> test
"test"
```
"""
function ask(prompt::String="prompt> "; kw_prompt::String="")::String
    if !isempty(kw_prompt)
        print(kw_prompt)
    elseif !isempty(prompt)
        print(prompt)
    end
    return readline()
end # ask()

关于代码或文档的任何建议?

我不会同时调用支持位置和关键字args的Julian。就挑一个吧

如果您真的必须这样做,请在文档中对该细节进行润色。只需将两者链接在一起:

julia> """
           ask([prompt="prompt>"])
       """
       function ask(_prompt="prompt> "; prompt=_prompt)
           print(prompt)
           return readline()
       end
ask (generic function with 2 methods)

julia> ask();
prompt>

julia> ask("foo> ");
foo>

julia> ask(prompt="bar> ");
bar>

我不会同时调用支持位置参数和关键字参数的Julian。就挑一个吧

如果您真的必须这样做,请在文档中对该细节进行润色。只需将两者链接在一起:

julia> """
           ask([prompt="prompt>"])
       """
       function ask(_prompt="prompt> "; prompt=_prompt)
           print(prompt)
           return readline()
       end
ask (generic function with 2 methods)

julia> ask();
prompt>

julia> ask("foo> ");
foo>

julia> ask(prompt="bar> ");
bar>

您可以查看
round
的文档,因为它非常广泛,涵盖了许多具有不同位置参数和关键字参数组合的方法,有默认值和没有默认值。感谢您的实用评论。
round
在这里,有很多示例。您可以查看
round
,因为它非常广泛,涵盖了许多具有不同位置和关键字参数组合的方法,有默认值也有默认值。感谢您的实用评论。
round
在这里,有很多示例。这是一个非常有用的示例。谢谢这是一个非常有用的例子。谢谢