# A 模塊的介紹
# 模塊概念:功能的集合體,將這些功能集合在一個文件里,這個文件簡稱為模塊。 例如家務活(掃地功能,擦桌子功能等,都是保姆干的,保姆就相當于一個模塊)
# 模塊分類:內置模塊 第三方模塊 自定義模塊
#
# B 模塊的使用:import | from ...import...
# import 模塊名 模塊名也就是文件名
# from 模塊名 import 模塊中的名字1, ..., 模塊中的名字n
# from 模塊名 import 名字 as 別名
# 在執行文件中導入和使用模塊以及使用模塊中名稱空間的名字的語法:
# 導入模塊: import 模塊名 使用 模塊名. 模塊名和點連用
# 常見的四種模塊(了解下)
# 1.使用python編寫的.py文件
# 2.把一系列模塊組織到一起的文件夾(注:文件夾下有一個__init__.py文件,該文件夾稱之為包)
# 3.使用C編寫并鏈接到python解釋器的內置模塊
# 4.已被編譯為共享庫或DLL的C或C++擴展# C 模塊導入的三個過程
# 首次導入 import 模塊名
# 1.將被導入的模塊編譯形成對應的pyc文件
# 2.進入模塊,從上執行執行模塊中的代碼,將產生的所有名字存放在該模塊文件的全局名稱空間中
# 3.在使用模塊的文件中,產生一個與模塊名(模塊文件名)同名的名字,指向模塊的全局名稱空間import t1
# 運行起來就是aaa t1文件是 print('aaa')
# 后面重復導入的結果還是第一次導入的結果,只是執行第三步 前兩步不在執行
# 注意 import 模塊名 as 別名 導入一旦起別名,原模塊名變量失效,本質只產生了別名變量指向模塊文件的全局名稱空間# D 模塊的加載順序
# 內存>內置>sys.path sys.path 指的是環境變量 (沒有想要的模塊,就在環境變量里添加模塊路徑)# E 環境變量
# 環境變量:存放路徑的list,第一位默認一定是當前執行文件所在的路徑
import sys
# sys.path就是環境變量# 清空環境變量:所有導入都不能使用了
sys.path.clear()# 添加指定路徑到環境變量
sys.path.append() # 在結尾添加
sys.path.insert() # 在什么前面添加 def insert(self, *args, **kwargs): Insert object before index.# F from...import語法導入
# 導入完成的三件事
# 1.將被導入的模塊編譯形成對應的pyc文件
# 2.進入模塊,從上執行執行模塊中的代碼,將產生的所有名字存放在該模塊文件的全局名稱空間中
# 3.在導入模塊的文件中形成(一個或多個)名字指向模塊全局名稱空間中的(一個或多個)具體名字
# 注意
# from 模塊名 import 模塊中的名字1, ..., 模塊中的名字n
# from 模塊名 import 名字 as 別名
# from...import導入依賴環境變量 sys.path# G 循環導入
# 循環導入的問題點:名字沒有產生就使用名字
# 解決循環導入:先產生名字,在導入模塊
# -- 將會產生循環導入的模塊,導入語法延后 - 延后導入
?