【发布时间】:2016-02-16 15:29:59
【问题描述】:
Julia 中 Python 的 getattr() 等价物是什么?我已经尝试过以下元编程代码,但它只能在全局范围内工作,而不是在函数范围内。
type A
name
value
end
a = A("Alex",1)
for field in fieldnames(a)
println(eval(:(a.$field)))
end
这将打印出来:
Alex
1
但是,如果上面是在函数范围内,那么它将不起作用
function tmp()
a = A("Alex",1)
for field in fieldnames(a)
println(eval(:(a.$field)))
end
end
tmp()
错误是:
ERROR: LoadError: UndefVarError: a not defined
【问题讨论】:
标签: julia