caught in the import web again
davea at davea.name
Tue Nov 18 02:20:55 CET 2014
Ian Kelly <ian.g.kelly at gmail.com> Wrote in message:
> On Mon, Nov 17, 2014 at 3:17 PM, Dave Angel <davea at davea.name> wrote:
>> In a module that might get tangled in a cycle, avoid global code
>> that depends on other modules. Instead of putting such
>> initialization at top level, put inside a function that gets
>> called after all suspect imports are completed. (That function
>> has global keywords ).
> If the problem is that one of those modules would import the current
> module, then "after all suspect imports are completed" basically means
> after the current module has finished importing. So what would be
> responsible for calling such a function?
If one builds a set of modules that cannot avoid recursive
imports, then one can ask the code that imports it to make a call
after importing. Or all that is needed to avoid exposing the mess
is that the top level not be part of the loops.
More information about the Python-list