1、什麼是模塊函數
模塊,簡單而言,就是別人寫好的py文件,咱們只須要引入這個模塊,就可使用。測試
2、模塊的引入spa
同其餘語言同樣,咱們使用import關鍵字來引入模塊。語法格式爲: import 模塊名 code
須要引入多個模塊時,也能夠這樣寫:import 模塊名1,模塊名2..blog
注意:import 語句必須出如今文件最開始的地方字符串
3、引入模塊時作了哪些事情?requests
一、執行模塊.py文件class
二、引入函數名、變量名test
(通常狀況下,在模塊中通常只定義函數而不執行函數,固然也會能夠定義變量)import
4、調用模塊中的屬性和方法
語法格式爲:模塊名.函數名
爲何要採用這種方式呢?假設這樣一種狀況,咱們同時引入兩個不一樣的模塊A,B(包的名字不一樣),可是他們有一個相同名字的方法F,咱們須要調用的是A中的方法F而不是B中的方法F,若是隻是採用F函數名的方式調用的話,則會出現歧義。所以,使用模塊名.函數名的方式,能進行區分。
有時侯,咱們只須要模塊中的某個函數,只須要引入該函數便可,咱們能夠採用如下語句:from 模塊名 import 函數名1,函數名2..
使用 from 模塊名 import *能夠引入該模塊中全部的方法,可是不推薦。
5、__name__變量
1.若是模塊是被導入,__name__的值是模塊名
2.若是模塊是被直接執行,__name__的值是"__main__"
#這個是test.py裏面的代碼 def playLOL(): print("鐵骨錚錚王靖澤"); print(__name__); if __name__=="__main__": playLOL()
#這個是執行文件裏的代碼 import test; def listenMusic(): print("這歌真好聽"); print(__name__) if __name__=="__main__": test.playLOL(); listenMusic();
執行結果爲:
test
__main__
鐵骨錚錚王靖澤
這歌真好聽
經過這個特性能夠在if語句裏面添加測試代碼,能夠減小bug,提升程序的健壯性。
6、動態導入模塊
爲何要使用動態導入模塊?
1.import不能接受變量。
2.import只能導入已經安裝的模塊,若是導入的模塊未安裝則報錯
動態導入模塊的方式:
1.動態導入一個模塊可使用__import__()函數。
__import__()函數須要接收一個字符串參數。
os=__import__("os");
re=__import__("re")
2.動態導入一個模塊列表
moduleNames=["sys","requests","re","os"] modules=map(__import__(),moduleNames)