Original: http://www.douban.com/group/topic/24075924/ Lo he eliminado
Referencia http: //www.cnblogs.c
Paquetes de Python __init__.py
La esencia del paquete está en el archivo __init__.py El
archivo
__init__.py : __init__.py controla el comportamiento de importación del paquete. Si __init__.py está vacío, no se puede hacer nada con solo importar el paquete.
>>> import Package1
>>> Package1.Module1
Traceback (última llamada más reciente):
Archivo "<pyshell # 1>", línea 1, en?
Package1.Module1
AttributeError: 'módulo' objeto no tiene atributo 'Módulo1'
que necesitamos Pre-import Module1 en __init__.py: #File
__init__.py
import Module1
test:
>>> import Package1
>>> Package1.Module1
<
module'Package1.Module1 'from'Module.pyc'>
__init__.py Hay otro importante variable llamada __todos__. A veces hacemos un truco para "importar todo", que es así:
from PackageName import *
En este momento, la importación importará los submódulos y subpaquetes registrados en la lista __todos__ en el archivo del paquete __init__.py al alcance actual. Por ejemplo:
# File __init__.py
__all__ is = ['Module1', 'Module2', 'Package2']
Test:
>>> from the Package1 Import *
>>> Module2
<Module1 'Package1.Module2' from 'Module.pyc '>
El archivo __init__.py se ejecutará durante la importación.
Otras referencias:
http: //www.cnblogs.c