
Python
# wrong
class MyDataParallel(nn.DataParallel):
def __getattr__(self, name):
return getattr(self.module, name)
# correct
class MyDataParallel(DataParallel):
def __getattr__(self, name):
if name is not 'module':
try:
return getattr(self.module, name)
except AttributeError:
pass
print(name)
return super(nn.DataParallel, self).__getattr__(name)