MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Newbie Programming question

  • To: mathgroup at
  • Subject: [mg53438] Re: Newbie Programming question
  • From: "John Jowett" <John.Jowett at>
  • Date: Wed, 12 Jan 2005 03:41:08 -0500 (EST)
  • Organization: CERN
  • References: <crvtn6$144$>
  • Sender: owner-wri-mathgroup at

"Kerry Kim" <kjkim at> wrote in message 
news:crvtn6$144$1 at
> Hello,
> Is there any way in Mathematica to store/assign a value to a variable
> whose name is in a string?  In other words something like this:
> i = 17;
> foo="var" + ToString[i];
> SomeFunctionThatConvertsStringToSymbolName[foo] = 17;
> and then assign some value (say, 23) to the variable whose name is
> contained in the foo string? (i.e. var17=23)
> Thanks!

One possibility using StringJoin (StringJoin["a","b"} is also written as 

foo = "var" <> ToString[i];
ToExpression[foo <> "=23"]

Since you describe yourself as a "newbie", perhaps you will not mind my 
suggesting an alternative approach. I remember that when I came to 
Mathematica from other programming languages, I often wanted to do the same 
sort of thing.

Now I would find it more natural (and simpler) to define a function to store 
this information:


Note that this defines the value of the function for a particular argument 
(17) because I did not write var[i_].
Also note that var is not a list (there is no need to define var[1], say).

And of course it may be convenient to use non-integer arguments, e.g.,


To find out what var contains, type


John Jowett 

  • Prev by Date: Re: Newbie Programming question
  • Next by Date: Re: mathematica installation problem
  • Previous by thread: Re: Newbie Programming question
  • Next by thread: Re: Newbie Programming question