effective python目录_Effective python(七):协作开发
一,文檔字符串
1, 在函數(shù),類,模塊(頂端編寫)下使用三個(gè)"""括起來內(nèi)容即可
2, 文檔被關(guān)聯(lián)到__doc__屬性中,應(yīng)盡量充分的描述其用法,作用,異常等等
二,使用包來組織模塊,提供穩(wěn)固API
1, 模塊的__all__屬性是一個(gè)列表,其中的每個(gè)值都能作為本模塊的公共API,外部以from model import *的形式引入__all__中的屬性,若未提供__all__則只會引入public屬性即沒有下劃線前綴的屬性,一般內(nèi)部開發(fā)沒有必要用到
2, 引入包中的模塊from 包名 import 模塊
三,對自己編寫的模塊定義根異常,與普通異常隔離,便于發(fā)現(xiàn)代碼是錯(cuò)在模塊還是錯(cuò)在用法上
四,打破循環(huán)依賴
1, 即a要引入b,但b也需要引入a
2, Python執(zhí)行import語句時(shí)的機(jī)制
在sys.path的路徑中搜尋待引入模塊
從模塊中加載代碼,確保代碼能夠被編譯
創(chuàng)建于該模塊對應(yīng)的空對象
把空的模塊對象添加到sys.modules
運(yùn)行模塊對象中的代碼,定義其內(nèi)容
3,重構(gòu)方法
調(diào)整引入順序,在執(zhí)行完所必須的代碼后再引入
動態(tài)引入,在需要執(zhí)行的函數(shù)內(nèi)進(jìn)行引入(不推薦,增加開銷)
先引入,再配置,最后運(yùn)行,即先定義空對象,再引入完成后,利用configure函數(shù)去依次初始化配置各個(gè)模塊
五,pyvenv工具,虛擬環(huán)境隔離項(xiàng)目,重建依賴
1,python3.4以后pyvenv內(nèi)置于python,可以通過命令行調(diào)用
2,pyvenv /目錄新建虛擬環(huán)境
3,cd 目錄,source bin/activate激活虛擬環(huán)境
4,deactivate取消激活虛擬環(huán)境
5,pip3 freeze > requirements.txt導(dǎo)出依賴
6,pip3 install -r 目錄/requirements.txt安裝依賴
7,注意:創(chuàng)建的環(huán)境目錄是以硬編碼的形式寫死的,移動目錄會造成虛擬環(huán)境失效,所以在遷移項(xiàng)目的時(shí)候一般需要重新創(chuàng)建一個(gè)新的虛擬環(huán)境并重新安裝依賴
8,python3.4之前的版本pyvenv叫virtualenv
總結(jié)
以上是生活随笔為你收集整理的effective python目录_Effective python(七):协作开发的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php字符串分割tp模板,ThinkPH
- 下一篇: python json模块详解_深入解析