我可以使用点表示法对函数进行矢量化:
a = Vector(0:10) .* 4
Run Code Online (Sandbox Code Playgroud)
在很多例子中,我读到点在星号之前。但是,这在以下情况下不起作用:
Complex.(a,a)
Run Code Online (Sandbox Code Playgroud)
在这里,点突然出现在函数名称的后面。
这是故意的吗?而且有规律吗?
对于函数,点总是在函数名后面。
对于运算符,像*
或+
例如,点在运算符之前。但是,您可以将运算符括在括号中并为点添加后缀。
为了使这种差异更加明确,请考虑以下示例,其中我们将“乘法”应用于函数调用语法:
x = rand(2,2)
sqrt.(x)
.*(x,x)
(*).(x,x)
x .* x
Run Code Online (Sandbox Code Playgroud)
最后三个命令都做同样的事情。
有关更多信息,请参阅 Julia 文档的相应部分:向量化函数和向量化“点”运算符的点语法。