Python第三方包的導入

咱們知道,定義在環境變量PYTHONPATH裏是能夠直接用import導入的。下面咱們來操做如何從非pythonpath目錄導入第三方包或者本身定義的包。python

假定咱們的包有以下的目錄結構:person 是最頂層的包,man、woman、child是子包
shell

person\
    __init__.py
    person.py
    man\
        __init__.py
        goodman.py
        child\
             __init__.py
             lovelychild.py
    woman\
        __init__.py
        goodwoman.py

首先,咱們把包所在目錄(c:\testpackage)加入到sys.path路徑裏app

>>> import sys
>>> sys.path.append("c:\\testpackage")

注意:路徑分隔符必定要寫成"\\"的spa

一、用import方式 導入包,此種方式必須寫全包的路徑
操作系統

>>> import person.person
>>> person.person.printperson()
person
>>> import person.man.goodman
>>> person.man.goodman.printman()
man
>>> import person.woman.goodwoman
>>> person.woman.goodwoman.printwoman()
woman
>>> import person.man.child.lovelychild
>>> person.man.child.lovelychild.printchild()
child

二、用from * import *方式導入包code

>>> from person import person
>>> person.printperson()
person
>>> from person.man import goodman
>>> goodman.printman()
man
>>> from person.man.child import lovelychild
>>> lovelychild.printchild()
child
>>> from person.woman import goodwoman
>>> goodwoman.printwoman()
woman

也能夠用如下方式:字符串

>>> from person import *
>>> person.printperson()
person
>>> from person.man import *
>>> goodman.printman()
man
>>> from person.man.child import *
>>> lovelychild.printchild()
child

注意:這樣的語句會導入哪些文件取決於操做系統的文件系統;因此咱們在__init__.py 中加入 __all__ 變量;該變量包含執行這樣的語句時應該導入的模塊的名字;它由一個模塊名字符串列表組成。it

相關文章
相關標籤/搜索