Automatic import ?
Steven D'Aprano
steve at REMOVE-THIS-cybersource.com.au
Fri Mar 26 00:20:45 EDT 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 __init__.py 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 __init__.py file?
--
Steven
More information about the Python-list
mailing list