在這種目錄結構下,import fibo會實際導入fibo文件夾這個modulepython
λ tree /F 卷 Programs 的文件夾 PATH 列表 卷序列號爲 BC56-3256 D:. │ fibo.py │ ├─fibo │ │ __init__.py │ │ │ └─__pycache__ │ __init__.cpython-36.pyc │ └─__pycache__ fibo.cpython-36.pyc
>>> import fibo >>> fibo <module 'fibo' from 'D:\\Programs\\cmder\\Python\\fibo\\__init__.py'>
如果fibo目錄下未定義__init__.py,而存在fibo.py,則import fibo 會導入fibo.pyspa
. ├── fibo │ ├── gfibo.py │ ├── pfibo.py │ └── __pycache__ │ ├── __init__.cpython-35.pyc │ └── pfibo.cpython-35.pyc ├── fibo.py └── __pycache__ └── fibo.cpython-35.pyc
>>> import fibo >>> fibo <module 'fibo' from '/root/pyl/fibo.py'>
若不存在fibo.py,也不存在__init__.py,則會導入fibo命名空間code
. ├── fibo │ ├── gfibo.py │ ├── pfibo.py │ └── __pycache__ │ ├── __init__.cpython-35.pyc │ └── pfibo.cpython-35.pyc └── __pycache__ └── fibo.cpython-35.pyc
>>> import fibo >>> fibo <module 'fibo' (namespace)>