Python Forum

Full Version: Dynamic return ?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I receive in a function two parameters (Class and Method) with dynamic values that serve to reference a certain class and access the method on the return of the function. Working with dynamic data I imagined something like this :

v_return = v_class + "." + v_method + "()"
return v_return
The problem is that I need to execute the return to call the class method retrieved in the parameter and not print the string on the screen :

Main.index()
Another possibility would be utilizing dicts to register the objects and have a lookup() method. Something like this:

class Test:
	def a(self):
		return 5

	def b(self):
		return 10

	def lookup(self, meth):
		return {"a": self.a, "b": self.b}.get(meth, self.a)

x = Test()
x.lookup("b")()
In addition to this, you would need another dict to store instances and look them up.
(Mar-30-2020, 10:28 PM)stullis Wrote: [ -> ]Another possibility would be utilizing dicts to register the objects and have a lookup() method. Something like this:

class Test:
	def a(self):
		return 5

	def b(self):
		return 10

	def lookup(self, meth):
		return {"a": self.a, "b": self.b}.get(meth, self.a)

x = Test()
x.lookup("b")()
In addition to this, you would need another dict to store instances and look them up.
getattr()