首先我定义一个变量 a =2
其次,我定义一个函数
function sq(x)
return x^2
end
第三,调用函数sq:sq(a)=4
我的问题是,如何才能在函数sq()中获取传过来的参数a的名字。
首先我定义一个变量 a =2
其次,我定义一个函数
function sq(x)
return x^2
end
第三,调用函数sq:sq(a)=4
我的问题是,如何才能在函数sq()中获取传过来的参数a的名字。
什么叫a的名字?字符串,符号,还是别的什么?
https://stackoverflow.com/questions/38986764/save-variable-name-as-string-in-julia
a = 2
sq(a)
我想在函数sq()中输出字符串“a”
把变量的名作为symbol传入, 例如:
julia> function pass2func(f::Function, x::Symbol;mod=@__MODULE__)
@assert isdefined(mod, x)
println(x, " = ", f(eval(x)))
end
pass2func (generic function with 1 method)
a=2
julia> pass2func(sq, :a)
a = 4
你想要的东西其实是宏
#!/usr/bin/julia
macro sq(a::Symbol)
println("sq(",a,")","=",eval(a)^2)
end
x=2
@sq x
# sq(x)=4
谢谢您,
谢谢,
您帮助了我好多次了。
谢谢你,julia中文社区没法关注用户,我在github上关注你了。