Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #96325 > unrolled thread
| Started by | "Frank Millman" <frank@chagford.com> |
|---|---|
| First post | 2015-09-11 08:40 +0200 |
| Last post | 2015-09-11 08:40 +0200 |
| Articles | 1 — 1 participant |
Back to article view | Back to comp.lang.python
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: Question about import "Frank Millman" <frank@chagford.com> - 2015-09-11 08:40 +0200
| From | "Frank Millman" <frank@chagford.com> |
|---|---|
| Date | 2015-09-11 08:40 +0200 |
| Subject | Re: Question about import |
| Message-ID | <mailman.357.1441953656.8327.python-list@python.org> |
"Ian Kelly" wrote in message news:CALwzidm3khNaGTt0OhVEo5bhqk1tFEjBUUUinW9TNUxrpnr8cw@mail.gmail.com... On Thu, Sep 10, 2015 at 1:12 AM, Frank Millman <frank@chagford.com> wrote: > > That makes me wonder if, in my project, I can import all modules inside > > 'start.py', and then just use 'import package_name' inside each module? > > You can, but for readability and reuse I think it's better to be > explicit in each module and import the fully qualified module names > that are needed, rather than relying on some other module to import > them for you. I don't disagree. However, I started this exercise because I found a situation in one of my modules where I was referring to another module without ever importing it, and it worked! It took me quite a while to track down what was happening. So there could be a case for being explicit in the other direction - import all modules up front, and explicitly state that all modules are now free to reference anything in any other module. I will give it more thought. > > Another question - I thought that, because aa.py and bb.py are in > > different > > sub-directories, I would have to set them up as packages by adding > > '__init__.py' to each one, but it works fine without that. What am I > > missing? > That surprises me also, but I suspect it's because they're > subdirectories of the current working directory rather than packages > found on the sys.path. I had a look at PEP 420, as mentioned by Peter. I did not understand much of it, but it did say that omitting __init__.py incurs an additional overhead, so I will stick with including it. Many thanks for the useful input. Frank
Back to top | Article view | comp.lang.python
csiph-web