File: LP6E/Chapter31/factory.py

def factory(aClass, *pargs, **kargs):        # Varargs tuple, dict
    return aClass(*pargs, **kargs)           # Call aClass

class Hack:
    def doit(self, message):
        print(message)

class Person:
    def __init__(self, name, job=None):
        self.name = name
        self.job  = job

object1 = factory(Hack)                      # Make a Hack object
object2 = factory(Person, 'Sue', 'dev')      # Make a Person object
object3 = factory(Person, name='Bob')        # Ditto, with keywords and default



[Home page] Books Code Blog Python Author Train Find ©M.Lutz