模組是python組織**的基本方式。
乙個python指令碼可以單獨執行,也可以匯入到另乙個指令碼中執行,當指令碼被匯入執行時,我們將其稱為模組(module),所有的.py檔案都可以作為乙個模組匯入。
模組名與指令碼的檔名相同,例如我們寫了乙個hello.py的檔案,我們在另外乙個指令碼中可以用import hello 語句來匯入它
python的模組可以按目錄組織為包
包的目錄下,必須有乙個_init_.py檔案。
自建sys.path目錄,方便以後引入模組:
vim .bashrc
加入:
export pythonpath=/root/library
source .bashrc
[root@jie ~]# echo $pythonpath
/root/library
此時,我們就可以看到python中 sys.path已經將/root/library 路徑引用進去,以後我們可以將模組放入此位置,python會自行去該目錄下面搜尋
建立乙個讀取檔案資訊的指令碼,用例外乙個指令碼呼叫:
vim w.py
#!/usr/bin/python
def wordcount(s):
chars = len(s)
words = len(s.split())
lines = s.count('\n')
print ("chars:%s,words:%s,lines:%s "%(chars,words,lines))
s=open('/etc/passwd').read()
wordcount(s)
建立另外乙個指令碼去呼叫他
vim s.y
#!/usr/bin/env python
import w
s = """hello world
python"""
w.wordcount(s)
此時執行s.py
[root@jie py]# python s.py
chars:1212,words:47,lines:26
chars:19,words:3,lines:1
此時 執行s.py指令碼 會輸出 w.py的值,也會輸出s.py指令碼中定義的值
我們需要優化一下,當將乙個指令碼當成模組呼叫時,應該去掉該指令碼的輸出值
呼叫w.py函式方法:
cat wc.py
#!/usr/bin/python
def wordcount(s):
chars = len(s)
words = len(s.split())
lines = s.count('\n')
print lines,words,chars
if __name__ == '__main__':
s=open('/etc/passwd').read()
wordcount(s)
優化一下呼叫指令碼
cat t.py
#!/usr/bin/python
import wc
t="""hello word py"""
wc.wordcount(t)
此時s.py將呼叫w.py的方法,並且不會輸出w.py的值
[root@jie py]# python w.py
chars:1212,words:47,lines:26
[root@jie py]# python s.py
chars:19,words:3,lines:1
包的名字其實就是目錄名字
引用模組:import ***
引用包下面的模組:from *** import ***
目錄下面需要有乙個__init__.py 檔案,檔案內容可以為空
[root@jie py]# ls bao/
__init__.py w.py
[root@jie py]# cat s.py
#!/usr/bin/env python
from bao import w
s = """hello world
python"""
w.wordcount(s)
[root@jie py]# python s.py
chars:19,words:3,lines:1
此時就是 根據目錄引用模組了 python 模組和包 python模組和包
一.模組 python 模組 module 是乙個 python 檔案,以 py 結尾,包含了 python 物件定義和python語句。模組能定義函式,類和變數,模組裡也能包含可執行的 二.匯入模組 1.語法 import模組名from 模組名 import功能名from 模組名 import i...
python包使用 Python模組和包使用
1 什麼是模組 模組就是乙個.py的檔案 2 為什麼要使用模組?最開始的程式 沒有任何組織 函式 類 模組 包 為了讓程式的組織結構更加靈活清晰,降低耦合性 方便管理 3 如何使用模組 1 import 只能匯入在當前目錄 和內建的模組,使用模組裡的內容需要 模組.來呼叫 2 from.import...
Python 八 模組和包的使用
一 模組和包的概念 在python中,乙個.py檔案就稱之為乙個模組 module python又引入了按目錄來組織模組的方法,稱為包 package 1.模組匯入方法 2 package包的使用請注意,每乙個包目錄下面都會有乙個 init py的檔案,這個檔案是必須存在的,否則,python就把這...