Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #5935

Re: referring to package scope from module, using relative import?

References <4dd81254$0$49046$e4fe514c@news.xs4all.nl>
From Ian Kelly <ian.g.kelly@gmail.com>
Date 2011-05-21 14:00 -0600
Subject Re: referring to package scope from module, using relative import?
Newsgroups comp.lang.python
Message-ID <mailman.1888.1306008043.9059.python-list@python.org> (permalink)

Show all headers | View raw


On Sat, May 21, 2011 at 1:28 PM, Irmen de Jong <irmen.NOSPAM@xs4all.nl> wrote:
> Hi,
>
> I have a package with several modules in it. The package also has some objects created
> in the package scope (done in the package __init__.py).
>
> Is it possible to access those package scope objects from the modules, with relative
> imports or something? So that I don't have to import the package itself in its own
> submodules?
>
>
> Example:
>
> A/
>   __init__.py    ->  creates A.something
>   thing.py       ->  needs to do "import A"  to access A.something
>                      would like to not have to import A

You can do the relative import like this:

from . import something

Or if something were defined in A/otherthing.py, then:

from .otherthing import something

Note that PEP 8 discourages relative imports and encourages absolute
imports, though.  This would be the preferred way to do it:

from A import something

Cheers,
Ian

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

referring to package scope from module, using relative import? Irmen de Jong <irmen.NOSPAM@xs4all.nl> - 2011-05-21 21:28 +0200
  Re: referring to package scope from module, using relative import? Ian Kelly <ian.g.kelly@gmail.com> - 2011-05-21 14:00 -0600
    Re: referring to package scope from module, using relative import? Irmen de Jong <irmen.NOSPAM@xs4all.nl> - 2011-05-21 23:32 +0200

csiph-web