Is there a way to display the variable name instead of its value? for example, I need something likevarname = 1; function[varname];
and the output is varname
instead of 1
2 Answers
$\begingroup$
$\endgroup$
1
varname = 1;
SetAttributes[ShowName, HoldAll]
ShowName[name_] :=
Row[{"The name is ", HoldForm @ varname, " and its value is ", ReleaseHold @ varname}]
ShowName @ varname
The name is varname and its value is 1
Or simply
HoldForm @ varname
varname
-
4$\begingroup$ Why not just say
ShowName = HoldForm
? $\endgroup$ Commented Sep 16, 2014 at 13:20
$\begingroup$
$\endgroup$
There's also Defer
to accomplish this:
varname = 1;
Defer @ varname
varname
HoldForm
? There are many threads onHold
ing around, please have a look. $\endgroup$