I needed help on this one. How do I convert a string into a variable/object/instance name, since I don't know how to categorize this.
Assuming my code is:
a = {}
b = {}
class Test:
def getKeys(self, var):
return var.keys() #where var refers to the dictionary and its a string initially
It's been forever since I've done anything with Python but I do remember having this problem once. I suggest you look into the
eval()
function.If I understand correctly, your variable
var
is a string that might be"a"
or"b"
. You want to use that letter to pick the correct dictionary global variable to look in.I suggest putting your dictionaries into another dictionary, with keys you can use to look it up by name:
However, this may be simply an issue of design. Instead of sending a variable name to the
getkeys
method, why not simply send the dictionary itself and use your current code?Instead of
Test().getkeys("a")
, callTest().getkeys(a)
(no quotation marks).