Fix minor spelling, grammar, and consistency errors in the Packages section.

This commit is contained in:
Jay Roberts
2012-05-11 14:24:49 -04:00
parent 13865eecae
commit e79aa476a0
+13 -13
View File
@@ -149,29 +149,29 @@ Packages
Python provides a very straightforward packaging system, which is simply an
extension of the module mechanism to a directory.
Any directory with a __init__.py file is considered a Python package. The
Any directory with an __init__.py file is considered a Python package. The
different modules in the package are imported in a similar manner as plain
modules, will a special behavior for the __init__.py file, that is used to
modules, but with a special behavior for the __init__.py file, which is used to
gather all package-wide definitions.
A file modu.py in the directory pack/ is imported with the statement `import
pack.modu`. This statement will look for a __init__.py file in `pack`, execute
all its top-level statements. Then it will look for a file `pack/modu.py` and
execute all its top-level statements. After these operations, any variable,
function or class defined in modu.py is available in pack.modu namespace.
pack.modu`. This statement will look for an __init__.py file in `pack`, execute
all of its top-level statements. Then it will look for a file `pack/modu.py` and
execute all of its top-level statements. After these operations, any variable,
function, or class defined in modu.py is available in the pack.modu namespace.
A commonly seen issue is to add too many code and functions in __init__.py
A commonly seen issue is to add too much code to __init__.py
files. When the project complexity grows, there may be sub-packages and
sub-sub-packages in a deep directory structure, and then, import a single item
from a sub-sub-package will require to execute all __init__.py file met while
descending the tree.
sub-sub-packages in a deep directory structure, and then, importing a single item
from a sub-sub-package will require executing all __init__.py files met while
traversing the tree.
Leaving a __init__.py file empty is considered normal and even a good pratice,
Leaving an __init__.py file empty is considered normal and even a good practice,
if the package's modules and sub-packages do not need to share any code.
Lastly, a convenient syntax is available for importing deeply nested packages:
`import very.deep.module as mod` allow to use `mod` in place of the verbose
repetition of `very.deep.module` in front of each calls to module items.
`import very.deep.module as mod`. This allows you to use `mod` in place of the verbose
repetition of `very.deep.module`.
Object-oriented programming
---------------------------