1. 程式人生 > >菜鳥教程-python中的包

菜鳥教程-python中的包

轉載自:http://www.runoob.com/python/python-modules.html

包是一個分層次的檔案目錄結構,它定義了一個由模組及子包,和子包下的子包等組成的 Python 的應用環境。

簡單來說,包就是資料夾,但該資料夾下必須存在 __init__.py 檔案, 該檔案的內容可以為空。__int__.py用於標識當前資料夾是一個包。

考慮一個在 package_runoob 目錄下的 runoob1.py、runoob2.py、__init__.py 檔案,test.py 為測試呼叫包的程式碼,目錄結構如下:

test.py
package_runoob
|-- __init__.
py |-- runoob1.py |-- runoob2.py
原始碼如下:

package_runoob/runoob1.py

#!/usr/bin/python# -*- coding: UTF-8 -*-defrunoob1(): print"I'm in runoob1"

package_runoob/runoob2.py

#!/usr/bin/python# -*- coding: UTF-8 -*-defrunoob2(): print"I'm in runoob2"

現在,在 package_runoob 目錄下建立 __init__.py

package_runoob/__init__.py

#!/usr/bin/python
# -*- coding: UTF-8 -*-if__name__ == '__main__': print'作為主程式執行'else: print'package_runoob 初始化'

然後我們在 package_runoob 同級目錄下建立 test.py 來呼叫 package_runoob 包

test.py

#!/usr/bin/python# -*- coding: UTF-8 -*-# 匯入 Phone 包frompackage_runoob.runoob1importrunoob1frompackage_runoob.runoob2importrunoob2runoob1()
runoob2()

以上例項輸出結果:

package_runoob 初始化
I'm in runoob1
I'm in runoob2