#!/usr/binf/env python # -*- coding: UTF-8 -*- import abc from abc_base import PluginBase class IncompleteImplementation(PluginBase): def save(self, output, data): return output.write(data) PluginBase.register(IncompleteImplementation) if __name__ == '__main__': print 'Sottoclasse:', issubclass(IncompleteImplementation, PluginBase) print 'Istanza :', isinstance(IncompleteImplementation(), PluginBase)
# abc_find_subclasses.py import abc from abc_base import PluginBase import abc_subclass import abc_register for sc in PluginBase.__subclasses__(): print(sc.__name__)
#!/usr/bin/env python # -*- coding: utf-8 -*- # import abc from abc_base import PluginBase class RegisteredImplementation(object): def load(self, input): return input.read() def save(self, output, data): return output.write(data) PluginBase.register(RegisteredImplementation) if __name__ == "__main__": print 'Subclass:', issubclass(RegisteredImplementation, PluginBase) print 'Instance:', isinstance(RegisteredImplementation(), PluginBase) import pdb pdb.set_trace()
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2009 Doug Hellmann All rights reserved. # """ """ #end_pymotw_header import abc from abc_base import PluginBase class LocalBaseClass(object): pass class RegisteredImplementation(LocalBaseClass): def load(self, input): return input.read() def save(self, output, data): return output.write(data) PluginBase.register(RegisteredImplementation) if __name__ == '__main__': print 'Subclass:', issubclass(RegisteredImplementation, PluginBase) print 'Instance:', isinstance(RegisteredImplementation(), PluginBase)
#!/usr/bin/env python # -*- coding: utf-8 -*- import abc from abc_base import PluginBase import abc_subclass import abc_register for sc in PluginBase.__subclasses__(): print sc.__name__
# -*- coding: utf-8 -*- import abc from abc_base import PluginBase class IncompleteImplementation(PluginBase): def save(self, output, data): return output.write(data) PluginBase.register(IncompleteImplementation) if __name__ == '__main__': print('Subclass:', issubclass(IncompleteImplementation, PluginBase)) print('Instance:', isinstance(IncompleteImplementation(), PluginBase))
def call_test(self): PluginBase.base_func() self.base_method()