包:package
模組:module
方法(函式):function
基本含義
**為了編寫可維護的**,我們把很多函式分組,分別放到不同的檔案裡,這樣,每個檔案包含的**就相對較少,很多程式語言都採用這種組織**的方式。在python中,乙個.py檔案就稱之為乙個模組(module)。
**包是比模組更高層的概念,模組一般是乙個檔案,包是乙個目錄,乙個包中可以包含很多個模組。包的all 定義在init.py檔案中,模組的all定義在模組檔案的開頭。
包的結構
# 包的結構
|--包
|--|-- __init__.py 包的標誌檔案
|--|-- 模組1
|--|-- 模組2
|--|-- 子包(子資料夾)
|--|--|-- __init__.py 包的標誌檔案
|--|--|-- 子包模組1
|--|--|-- 子包模組2
舉個例子,乙個abc.py的檔案就是乙個名字叫abc的模組,乙個xyz.py的檔案就是乙個名字叫xyz的模組。
現在,假設我們的abc和xyz這兩個模組名字與其他模組衝突了,於是我們可以通過包來組織模組,避免衝突。方法是選擇乙個頂層包名,比如mycompany,按照如下目錄存放:
mycompany
├─ __init__.py
├─ abc.py
└─ xyz.py
在python中引入模組可以用
import m
from m import *
from m import f
引入包的方式可以是
import p
from p import m
from p import *
from p.m import f
補充:匯入的方法
import packagea.subpackagea.modulea
from packagea.subpackagea import modulea
from packagea.subpackagea.modulea import functiona
部分內容參考以下部落格:
python中的模組(包)
1.安裝及入門介紹推薦 pip install jieba結巴中文分詞涉及到的演算法包括 1 基於trie樹結構實現高效的詞圖掃瞄,生成句子中漢字所有可能成詞情況所構成的有向無環圖 dag 2 採用了動態規劃查詢最大概率路徑,找出基於詞頻的最大切分組合 3 對於未登入詞,採用了基於漢字成詞能力的hm...
Python中的模組與包
在import模組的時候,python是通過系統路徑找到這些模組的,我們可以將這些路徑列印出來 pprint.pprint sys.path library python 2.7 site packages pip 1.4.1 py2.7.egg library python 2.7 site pa...
python中的模組和包
乙個模組就是乙個包含python 的檔案。乙個檔案就是乙個模組 1.現在程式開發檔案比較大,都放在乙個檔案中維護不方便,拆分成多個檔案方便維護與管理 2.模組可以增加 的重用率 3.模組可以當作命名空間模組本身就是乙個檔案,所有py 都可以在檔案中直接書寫。不過我們開發共用模組時,最好在模組中書寫以...