mindspore.ms_class
- mindspore.ms_class(cls)[源代码]
用户自定义类的类装饰器。
MindSpore可以通过ms_class识别用户定义的类,从而获取这些类的属性和方法。
- 参数:
cls (Class) - 用户自定义的类。
- 返回:
带有 __ms_class__ 属性的类。
- 异常:
TypeError - 如果 ms_class 用于非 class 类型或者 nn.Cell。
AttributeError - 如果调用了 ms_class 装饰的类的私有属性或魔术方法。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> import mindspore.nn as nn >>> from mindspore import ms_class ... >>> @ms_class ... class UserDefinedNet: ... def __init__(self): ... self.value = 10 ... ... def func(self, x): ... return 2 * x ... >>> class Net(nn.Cell): ... def __init__(self): ... super(Net, self).__init__() ... self.net = UserDefinedNet() ... ... def construct(self, x): ... out = self.net.value + self.net.func(x) ... return out ... >>> net = Net() >>> out = net(5) >>> print(out) 20