Skip to main content
Stack Overflow
  1. About
  2. For Teams

Return to Answer

added 26 characters in body
Source Link
kirelagin
  • 13.7k
  • 2
  • 45
  • 59

Normally when you are developing a single application your directory structure will be similar to

src/
 |-myapp/
 |-pkg_a/
 |-__init__.py
 |-foo.py
 |-pkg_b/
 |-__init__.py
 |-bar.py
 |-myapp.py

This lets your whole project be reused as a package by others. In myapp.py you will typically have a short main function.

You can import other modules of your application easily. For example, in pkg_b/bar.py you might have

import myapp.pkg_a.foo

I think it's the preferred way of organising your imports.

You can do relative imports if you really want, they are described in PEP-328.

import ..pkg_a.foo

but personally I think, they are a bit ugly and difficult to maintain (that's arguable, of course).

Of course, if one of your modules needs a module from another application it's a completely different story, since this application is an external dependency and you'll have to handle it.

Normally when you are developing a single application your directory structure will be similar to

src/
 |-myapp/
 |-pkg_a/
 |-__init__.py
 |-foo.py
 |-pkg_b/
 |-__init__.py
 |-bar.py
 |-myapp.py

This lets your whole project be reused as a package by others. In myapp.py you will typically have a short main function.

You can import other modules of your application easily. For example, in pkg_b/bar.py you might have

import myapp.pkg_a.foo

I think it's the preferred way of organising your imports.

You can do relative imports if you really want, they are described in PEP-328.

Of course, if one of your modules needs a module from another application it's a completely different story, since this application is an external dependency and you'll have to handle it.

Normally when you are developing a single application your directory structure will be similar to

src/
 |-myapp/
 |-pkg_a/
 |-__init__.py
 |-foo.py
 |-pkg_b/
 |-__init__.py
 |-bar.py
 |-myapp.py

This lets your whole project be reused as a package by others. In myapp.py you will typically have a short main function.

You can import other modules of your application easily. For example, in pkg_b/bar.py you might have

import myapp.pkg_a.foo

I think it's the preferred way of organising your imports.

You can do relative imports if you really want, they are described in PEP-328.

import ..pkg_a.foo

but personally I think, they are a bit ugly and difficult to maintain (that's arguable, of course).

Of course, if one of your modules needs a module from another application it's a completely different story, since this application is an external dependency and you'll have to handle it.

added 6 characters in body
Source Link
kirelagin
  • 13.7k
  • 2
  • 45
  • 59

Normally when you are developing a single application your directory structure will be similar to

src/
 |-myapp/
 |-pkg_a/
 |-__init__.py
 |-foo.py
 |-pkg_b/
 |-__init__.py
 |-bar.py
 |-myapp.py

This lets your whole project be reused as a package by others. In myapp.py you will typically have a short main function.

You can import other modules of your application easily. For example, in pkg_b/bar.py you might have

import myapp.pkg_a.foo

Actually,I think it's the only "good"preferred way of organising your imports.

You can do relative imports if you really want, they are described in PEP-328.

Of course, if one of your modules needs a module from another application it's a completely different story, since this application is an external dependency and you'll have to handle it.

Normally when you are developing a single application your directory structure will be similar to

src/
 |-myapp/
 |-pkg_a/
 |-__init__.py
 |-foo.py
 |-pkg_b/
 |-__init__.py
 |-bar.py
 |-myapp.py

This lets your whole project be reused as a package by others. In myapp.py you will typically have a short main function.

You can import other modules of your application easily. For example, in bar.py you might have

import myapp.pkg_a.foo

Actually, it's the only "good" way of organising your imports.

Of course, if one of your modules needs a module from another application it's a completely different story, since this application is an external dependency and you'll have to handle it.

Normally when you are developing a single application your directory structure will be similar to

src/
 |-myapp/
 |-pkg_a/
 |-__init__.py
 |-foo.py
 |-pkg_b/
 |-__init__.py
 |-bar.py
 |-myapp.py

This lets your whole project be reused as a package by others. In myapp.py you will typically have a short main function.

You can import other modules of your application easily. For example, in pkg_b/bar.py you might have

import myapp.pkg_a.foo

I think it's the preferred way of organising your imports.

You can do relative imports if you really want, they are described in PEP-328.

Of course, if one of your modules needs a module from another application it's a completely different story, since this application is an external dependency and you'll have to handle it.

Post Undeleted by kirelagin
Post Deleted by kirelagin
Source Link
kirelagin
  • 13.7k
  • 2
  • 45
  • 59

Normally when you are developing a single application your directory structure will be similar to

src/
 |-myapp/
 |-pkg_a/
 |-__init__.py
 |-foo.py
 |-pkg_b/
 |-__init__.py
 |-bar.py
 |-myapp.py

This lets your whole project be reused as a package by others. In myapp.py you will typically have a short main function.

You can import other modules of your application easily. For example, in bar.py you might have

import myapp.pkg_a.foo

Actually, it's the only "good" way of organising your imports.

Of course, if one of your modules needs a module from another application it's a completely different story, since this application is an external dependency and you'll have to handle it.

lang-py

AltStyle によって変換されたページ (->オリジナル) /