8.什麽是模塊,模塊的導入,__name__
阿新 • • 發佈:2018-02-04
圖片 目錄結構 pen bottom 模塊名 done dll python 安裝 imp
什麽是模塊:
在Python中,模塊就是一個個方法和類的倉庫,如果我們想要使用某個方法或類,那麽我們就需要導入對應的模板。
【python有內置方法、類,所以有些方法我們並不需要導入模塊】
模塊的使用:模塊.函數 , 模塊.類
模塊的導入:
-
模塊導入:
- import 模塊名
#import 模塊名 import math print(math.sqrt(9))
- from…import 語句:從模塊中導入一個指定的部分,如類、方法,其中from…import * 代表導入全部內容
#from 模塊名 import 類名、方法名 from collections importIterable print(isinstance("abc",Iterable)) print(isinstance([1,2,3],Iterable))
- from…import導入的時候還能給導入的部分起個自定義的名字:如:from … import funcA as fa
-
自模塊導入:
Python import 的搜索路徑
1.在當前目錄下搜索該模塊
2.在環境變量 PYTHONPATH 中指定的路徑列表中依次搜索 【可以從sys.path中獲取】
import sys print(sys.path) ---------- 運行結果: [‘J:\\HardWork\\Code\\python‘, ‘J:\\HardWork\\Code\\python‘, ‘I:\\python3\\python36.zip‘, ‘I:\\python3\\DLLs‘, ‘I:\\python3\\lib‘, ‘I:\\python3‘, ‘I:\\python3\\lib\\site-packages‘]3.在 Python 安裝路徑的 lib 庫中搜索
-
同級目錄導入:直接導入
-
不同級目錄導入:將對應目錄加入到sys.path中,再import
目錄結構:
c中內容:
b中如何導入c:
import sys,os print(__file__)##這是當前文件的絕對路徑parent_dir=os.path.dirname(__file__)##獲得當前文件的目錄 pp_dir=os.path.dirname(parent_dir) sys.path.append(pp_dir) # print(sys.path) import c #要導入c,必須將diff_dir加入sys.path中
__name__:
由於模塊既可以被導入,也可以被直接運行,為了區分什麽是直接運行時運行的內容,所以有了__name__:
當直接運行時,__name__是__main__:
print("import C done") print(__name__) if __name__==‘__main__‘: print("direct run") --------------- 運行結果: import C done __main__ direct run
當用於導入時,__name__是當前導入的模塊名,由於__name__不等於__main__,所以不會執行:
import sys,os # print(__file__)##這是當前文件的絕對路徑 parent_dir=os.path.dirname(__file__)##獲得當前文件的目錄 pp_dir=os.path.dirname(parent_dir) sys.path.append(pp_dir) # print(sys.path) import c #要導入c,必須將diff_dir加入sys.path中 ------------------ 運行結果: import C done c
8.什麽是模塊,模塊的導入,__name__