[Python-Dev] Relative vs. absolute imports
Phillip J. Eby
pje at telecommunity.com
Mon May 17 11:38:40 EDT 2004
At 05:15 PM 5/17/04 +0200, M.-A. Lemburg wrote:
>Phillip J. Eby wrote:
>>>>>I have a few questions about the PEP 328 which I'd like discussed:
>>>>>
>>>>>* Why do we absolutely need to change the current scheme
>>>>> of 'local, then absolute' for name resolution ?
>>>>
>>>>Because there's no way to override the current scheme without calling
>>>>__import__ directly.
>>>
>>>
>>>Are you saying that you are not going to change the default __import__()
>>>implementation, only the way it is called ? (I wonder how you'll
>>>enforce the 'absolute only' strategy then)
>>Huh? You lost me. What 'absolute only'? There's "from .x import y"
>>still, and that's relative.
>>As far as I know, nothing about __import__ is changing, only the spelling
>>of import statements.
>
>If "import os" is supposed to map to an absolute import
>you will have to change the semantics of __import__ because
>simply passing "os" to that API is going to implement the
>standard 'local, then absolute' import scheme.
As I believe I mentioned before, the relevant import opcodes will simply
pass a different set of parameters to __import__. Supplying a different
"globals" dictionary suffices to implement an absolute import.
More information about the Python-Dev
mailing list