How to get the value of a variable given its name in a string?

The Solution to How to get the value of a variable given its name in a string? is


If it's a global variable, then you can do:

>>> a = 5
>>> globals()['a']
5

A note about the various "eval" solutions: you should be careful with eval, especially if the string you're evaluating comes from a potentially untrusted source -- otherwise, you might end up deleting the entire contents of your disk or something like that if you're given a malicious string.

(If it's not global, then you'll need access to whatever namespace it's defined in. If you don't have that, there's no way you'll be able to access it.)

~ Answered on 2012-02-24 20:46:41


Most Viewed Questions: