===========================模組===========================
1.Python把py檔案叫做模組。
2.使用模組需要引入,例如:
import sys
3.匯入模組需要設定路徑。
>>> import sys>>> print(sys.path)['', 'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python36-32\\Lib\\idlelib', 'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python36-32\\python36.zip', 'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python36-32\\DLLs', 'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python36-32\\lib', 'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python36-32', 'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python36-32\\lib\\site-packages']
sys.path是Python匯入模組時候搜尋的目錄。可以看出,包含了目前的目錄。
這個目前的目錄就是啟動程式的那個目錄。如果是使用shell。應該是shell的運行檔案的目錄。
如果要加入其它的目錄,可以通過append或者extend添加到sys.path裡面。
4.如果用命令列啟動Python程式,是可以傳入參數列表的。
argv是argument vector的縮寫。
參數列表儲存在sys.argv
我現在直接用內建的IDLE來測試的,本來想想Visual Studio一樣,可以設定命令列參數。
但是找不到,百度一下說沒有這項設定,命令列參數只是幾段文本,可以自己填
sys.argv =[sys.argv[0],'argument1','argument2','argument2']
調試好後整句加個#註解掉就ok。
通常情況,第一個參數是預設內建的,這個程式的絕對路徑。不需要自己去輸入。其他輸入都是從第二個位置開始的。
或者直接用cmd來啟動也可以
5.from xxx.xx.x import xxxx
可以直接使用模組內的函數,而不需要再這麼麻煩使用網域名稱。
===========================包===========================
包:
把相關聯的模組放在一起,可以通過引入包同時引入了包內的多個模組。
包下有__init__.py檔案,一看就知道這是包內部自己使用的。
這個檔案提示Python,這是個包目錄,而不是普通的目錄。指定了包內檔案的使用方式。
有些編輯器是會自動產生這個檔案的。我記得用sublime的時候好像是沒有產生的,後來運行了就會自動產生了。可能編譯器也會自動產生吧。
匯入包的時候,只計算__init__.py。如果這個檔案是空白的,是不能使用包內的模組的。還需要在這個檔案裡面寫匯入語句。
Python代碼編譯後,會產生對應的pyc檔案。應該是中間檔案。
sys.modules 可以看到已經載入的模組