gpt4 book ai didi

function - Julia:带有 Vector 类型可选参数但默认为 null 的函数?

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

我有一个功能 f(x) .我希望该函数具有向量类型的可选参数。例如,f(x; y::Vector=[1,2,3]) .但是,我希望默认值是其他值(空?丢失?无效?),以便我可以轻松捕获它并对其使用react。

在 R 中,我会说 function(x, y=NULL){}然后 if(is.null(y)){whatever} .

做类似事情的最朱利安方式是什么?

最佳答案

Engineero 在评论中引用的模式是最干净的,但它假设了一个位置参数。如果您坚持在函数中使用关键字参数(如您在问题中所做的那样),请使用:

function f(x; y::Union{Vector, Nothing}=nothing)
if y === nothing
# do something
else
# do something else
end
end

这通常只有在您有很多关键字参数时才需要,否则我会建议使用不同的位置参数签名定义方法。

当然这个模式和 nothing一起使用是完全可以的。如果您觉得它更可取,也可以用于位置参数。

关于function - Julia:带有 Vector 类型可选参数但默认为 null 的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52060427/

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