example-code-2e/23-dyn-attr-prop/pseudo_construction.py

11 lines
314 B
Python
Raw Normal View History

# pseudo-code for object construction
def make(the_class, some_arg):
new_object = the_class.__new__(some_arg)
if isinstance(new_object, the_class):
the_class.__init__(new_object, some_arg)
return new_object
# the following statements are roughly equivalent
x = Foo('bar')
x = make(Foo, 'bar')