如何使用Globals()来调用static& Python中的实例方法?
import sys
import json
import pprint
def Func102(arg0, arg1):
sys.stdout.write("Func102 ARG1 :" + arg0 + ": ARG1 :"+ arg1 + ":\n");
globals()['Func102']("Hey Dude", "Wassup");
class Glob101:
@staticmethod
def Func101(arg0, arg1):
sys.stdout.write("Func101 ARG1 :" + arg0 + ": ARG1 :"+ arg1 + ":\n");
print("\n\n\n");
globDict = str(globals());
print(json.dumps(globDict, indent=4, sort_keys=True));
print("\n\n\n");
globClass = globals.get('Glob101');
globClass.Func101("THIS IS NOT WORKING", "!!!");
globals()['Glob101.Func101']("THIS IS NOT WORKING EITHER", "!!!");
答案 0 :(得分:0)
我找到了问题的答案。我们可以一起使用getattr和globals来调用类中的静态函数。
@IBAction func yourMethod(sender: UIButton) {
// ... Do some cool things here
}
答案 1 :(得分:0)
只需使用包含所需功能的显式字典即可。这里有一个类没有。
def parse_something(arg0, arg1):
...
funcs = {"func_101": parse_something}
funcs["func_101"](1, 2)
字典键不需要匹配函数的名称。