Mathematica —为什么TreeForm [Unevaluated [4 ^ 5]]评估4 ^ 5?

| 如果我给Mathematica输入
TreeForm[Unevaluated[4^5]]
我希望看到三个方框-电源,4和5。 相反,我看到一个带有1024的框。任何人都可以解释吗?     
已邀请:
比较
TreeForm@Unevaluated[4^5]  
TreeForm@Hold[4^5]  
   从帮助中:   未评估[expr]   表示expr作为函数的参数出现时的未经评估的形式。 和   保持[expr]   以未评估的形式维护expr。 因此,随着Unevaluated [4 ^ 5]进入TreeForm ...它得到了评估... 它是这样的:
f[x_+y_]:=x^y;
f[3+4]
(*
-> f[7]
*)
f[Unevaluated[3+4]]
(*
->81
*)
    
每次评估都会剥夺
Unevaluated
的水平,因此您可以通过以下方式获得想要的东西:
TreeForm[Unevaluated@Unevaluated[4^5]]
    

要回复问题请先登录注册