模組定義
什麼是模組:一個py檔案就是一個模組
模組分為三類:
內建模組,(標準庫):.python直譯器自帶的,time,os,sys,等等.200多種.
自定義模組:自己寫的模組
第三方庫(模組):各種大神寫的一些模組,通過pip install....安裝.6000種.
模組的引入
import引用模組發生三件事.
\1. 將模組名.py檔案載入到記憶體.
\2. 在記憶體中建立一個以模組名命名的名稱空間.
\3. 通過模組名,名稱空間的名字.等方式引用此模組的名字(變數,函式名,類名等等).
通過import 引用模組 他有自己的獨立名稱空間,與當前執行檔案沒有關係.
起別名:將一個比較長的模組名化簡成簡單的
import 模組名 as f1(別名)
優點:
書寫方便
簡化程式碼
import 引入多個模組
import os
import sys
import time
#易於閱讀 易於編輯 易於搜尋 易於維護。__main__
from...import....
相當於從(模組名)模組的全域性空間中將變數與值的對應關係
複製到當前執行檔案的全域性名稱空間中.
from time import clock
從time 模組中引入clock
#優點:使用起來方便了.
#缺點:容易與當前執行檔案產生覆蓋效果.
載入多個函式或者變數
from ... import * 與__all__
配合使用(寫在模組檔案中)
__all__=['函式名'] #在模組檔案開頭寫入你要匯入的函式
py檔案的兩種功能
用來控制.py檔案在不同的應用場景下執行不同的邏輯(或者是在模組檔案中測試程式碼)
在模組檔案中寫入 print(__name__)
如果模組檔案當指令碼執行顯示:__main__
如果模組檔案被引入時執行顯示:模組名字 例如:tbjx
尋找模組的路徑: 記憶體 ----> 內建模組 ---> sys.path中找
只要這三個地方:記憶體 內建模組 sys.path可以找到這個引用的模組的路徑,這個模組就可以直接引用到
import sys #匯入sys模組
print(sys.path)
sys.path.append(r'E:\Python專案\666') #將要匯入模組的目錄新增到sys.path這個列表下
import tbjx #這時候再匯入就OK了
print(tbjx.name)