pytorch 通过修饰器从argparse中调用网络或method:
import Method
import CNN
def export(fn):
%通过__module__找到函数导入路径,sys.modules找到导入的文件
mod = sys.modules[fn.__module__]
%判断是否存在__all__,有则添加方法,没有则添加只导入该方法,
if hasattr(mod, '__all__'):
mod.__all__.append(fn.__name__)
else:
mod.__all__ = [fn.__name__]
return fn
@export
def method(**kwargs):
return Method(**kwargs)
@export
def cnn(**kwargs):
return CNN(**kwargs)