關於運行python腳本產生__pycache__

是什麼?python

用python編寫好一個工程,在第一次運行後,總會發現工程根目錄下生成了一個__pycache__文件夾,裏面是和py文件同名的各類 *.pyc 或者 *.pyo 文件。spa

python腳本編譯後產生的.pyc文件放到__pycache__中,下次運行時檢測到代碼沒有改變,則直接運行__pycache__中的pyc文件..net

 

 如何避免生成?code

單次: 運行腳本時添加 -B 參數blog

python -B foo.py內存

永久: 設置環境變量 PYTHONDONTWRITEBYTECODE=1源碼

 

python運行機制編譯

不須要生成二進制代碼,python解釋器把源碼->字節碼,而後在執行這些字節碼.class

解釋器的具體工做:變量

1.完成模塊(module)的加載和連接

2.將源代碼編譯成pyCodeObject(字節碼),寫入內存中,供CPU讀取

3.從內存中讀取並執行,結束後將pyCodeObject寫回到硬盤中,即複製到.pyc或.pyo文件中.

4.再次執行該腳本時,檢查是否有"字節碼文件"以及"字節碼文件是否和腳本一致".若是一致則直接執行,不然重複上述步驟.

 

參考文章:

https://blog.csdn.net/index20001/article/details/73501375/

相關文章
相關標籤/搜索