[Tutor] Using a string to get at a Variable

hcohen2 hcohen2 at comcast.net
Sun Jan 18 21:29:03 EST 2004

Isr Gish wrote:

>I'm trying to get the data from a variable using a string.
>For example I have three variables named apples, grapes, pears. Then I have a list with these 3 names as strings.
>Now I would like to do a loop on the list and getsthe data from each name.
>Any help would be greatly appreciated.
>Thanks in Advance
>Isr Gish
>Tutor maillist  -  Tutor at python.org

You are not very explicit on either on what you on working with nor the 
sort of object that contains the data you are seeking to extract, hence, 
I will just outline an example of my own design.

Let's say you get you set of variables as a tuple: (var_1, var_2, ..., 
var_n) - I am going to assume these variables are names of lists.  So I 
see no real need to convert them to strings.  If that is indeed 
necessary, skip the entire discussion.

#Intermediate result
names_tuple = (var_1, var_2, ..., var_n)
len_tuple = len(names_tuple)
for j in range(len_tuple):
                len_obj = len(var_j)
                for i in range(len_obj):
                        value_of_obj(i) = var_i[i]
                                print 'Show me the value of %s' %   
                                print var_i[i]
                                # Or do whatever you have in mind, e.g. 
storing in a dictionary, etc.
                         except ValueError, TypeError, diag:      # 
regarding the errors I am guessing
                               print str(diag)
       except TypeError, RangeError, diag:
                 print str(diag)

I am not sure how useful you will find this nor how close it is to 
solving the problem you are attacking - just recognize I am new at 
python.  Moreover, I may miss the clues to the type of problem, since my 
specialty is databases and much of the discussion here leaves me a bit 
puzzled as to where they are being applied.

In any case, I hope it helps a bit.

More information about the Tutor mailing list