从朱莉娅的列表表达中制作表达式列表

问题描述 投票:2回答:1

有没有办法从列表的表达式到朱莉娅的表达式列表,而无需评估中介?

julia> l = :([1, 2+x, 5, 3/x])
:([1, 2 + x, 5, 3 / x])

julia> @eval [$(quote e end) for e in $l]
ERROR: UndefVarError: x not defined

理想的状态是:

[1, :(2 + x), 5, :(3 / x)])
expression julia metaprogramming
1个回答
3
投票

这是做到这一点的方法(如果我正确理解你想要的):

julia> l.args
4-element Array{Any,1}:
 1
  :(2 + x)
 5
  :(3 / x)
© www.soinside.com 2019 - 2024. All rights reserved.