[Python-ideas] Class autoload

Terry Reedy tjreedy at udel.edu
Sat Mar 3 14:33:36 EST 2018


On 3/3/2018 12:12 PM, Jamesie Pic wrote:
> 
> Hello everybody,
> 
> I thought perhaps we could allow the usage of a "new" keyword to 
> instanciate an object, ie:
> 
>     obj = new yourmodule.YourClass()
> 
> In this case, it would behave the same as from yourmodule import 
> YourClass; obj = YourClass(), except that it wouldn't need to be 
> imported. This would also eliminate the need to manage an import list at 
> the beginning of a script in most case.

If you really want this (untested):

def autoload(mod, cls, *args, **kwargs):
     from mod import cls
     return cls(*args, **kwargs)

obj = autoload(yourmodule, YourClass)

-- 
Terry Jan Reedy




More information about the Python-ideas mailing list