模塊

<!doctype html>模塊html

模塊

模塊是什麼: !!!!!

模塊 是一組功能的集合 python中一個功能就是一個函數 一個py文件就是一個模塊 例如 A.py 文件名A.py 模塊名 Anode

模塊的分類:

1.自定義模塊 !!!!

(第三方模塊也屬於自定義 它是別的程序員寫的 ) ​ 關注如何自定義python

2.內置模塊 !!!!

是c語言寫的 而後鏈接到python解釋器中 ​ 例如 time模塊 ​ 關注如何使用c++

3.已經編譯爲DLL c或c++ ***

不須要知道怎麼來的 會用就行git

4.包 !!!!!

包其實是包含一堆模塊的文件夾 ​ 以後詳細將程序員

對於這四種模塊 它們的使用方式 是一致的github

如何定義模塊:!!!!!

建立一個py文件 把你的功能寫到文件中web

如何使用模塊:!!!!!

import 關鍵字 用於導入模塊到當前文件中 ​ 例如:import timewindows

當執行import 作了什麼? !!!!!

1.建立了一個命名空間 ​ 2.執行被導入的py中的代碼 將裏面的名字和地址對應關係 存儲到命名空間中 ​ 3.在執行文件中 建立一個名字 該名字指向的地址就是 第一步建立的命名空間(模塊的命名空間)app

執行文件和被導入的模塊的命名空間 是相互獨立的 !!!!

在被導入模塊中 全部的名字使用的都是本身空間中的 和調用者無關

import 的其餘寫法 !!!!!

1.給模塊取別名 用於簡化書寫

 
 
 
 
 
 
 
 
import xxx  as xxx
 

2.一次導入多個模塊

 
 
 
xxxxxxxxxx
 
 
 
 
import xxx,xxxx
 

3.從模塊中導入某個名字到當前名稱空間

 
 
 
xxxxxxxxxx
 
 
 
 
from xxx import xxx
 

注意 要避免名稱衝突 若是衝突了 按照就近查找原則

4.從模塊中導入多個名稱

 
 
 
xxxxxxxxxx
 
 
 
 
from xxx import xxx,xxx,xx
 

5.從模塊中導入全部名稱

 
 
 
xxxxxxxxxx
 
 
 
 
from xxx import *
 

all用於控制 使用者可使用哪些名稱

6.取別名

 
 
 
xxxxxxxxxx
 
 
 
 
from xxx import xx as xx
 

from 和 import 除了導入的名稱 不一樣 其餘特性一致

py文件的兩種執行方式 !!!!!

1.做爲執行文件 (右鍵run) ​ 2.做爲模塊被導入

name 這個名稱 能夠獲取當前執行狀態 ​ 若是是main 說明當前是執行文件 ​ 不然 說明是做爲模塊 ​ 因而乎有了如下代碼

 
 
 
xxxxxxxxxx
 
 
 
 
 if __name__ == "__main__":
            print("做爲執行文件")
        else:
            print("做爲模塊導入了")
 

重複導入模塊時 模塊中的代碼不會重複執行 僅在第一次導入時執行

模塊的搜索順序 !!!!!

內存中已經加載的 - > 內置模塊 - > sys.path 一般咱們子啊編寫項目時 會本身將模塊的路徑加入到sys.path中

相關文章
相關標籤/搜索