Automatic import ?

Steven D'Aprano steve at
Fri Mar 26 05:20:45 CET 2010

On Thu, 25 Mar 2010 18:03:58 -0700, C. B. wrote:

> Hi everyone,
> I'm currently coding a C library which provides several modules and
> objects.
> Let's say that some of these objects are classes called AAA and BBB. The
> constructor of AAA needs to get BBB as argument.
> So I can run the following code :
> from mymodule import AAA
> from mymodule import BBB
> a = AAA(BBB()))
> But, as there is no case where AAA can be used without BBB, I would like
> to avoid importing BBB in my Python scripts when I already import AAA.

Since AAA must take an argument of BBB, then give it a default:

# in mymodule
def AAA(arg=BBB()):

# in another module
from mymodule import AAA
a = AAA()

Or do this:

from mymodule import AAA, BBB
a = AAA(BBB())

> For now, I think that reproducing the behavior of the file
> could be a good way to do this, but how can I code that using only the C
> API ?

What is the behaviour of the file?


More information about the Python-list mailing list