ipython, hotreload 和 make.py

我逐漸遠(yuǎn)離了 Makefile,轉(zhuǎn)而用每個項目特制的 make.py 完成類似的任務(wù)。同時也不希望寫很多命令行參數(shù)解析,因為也比較厭煩了。

所以我現(xiàn)在的選擇多半是用 ipython 的 Shell,通過交互式命令行喚起腳本里特定的函數(shù)來完成任務(wù)。

這個想法的第一個問題就是當(dāng)前目錄需要是一個 python 包,不然 import make 是無效的。為此我需要創(chuàng)建一個空的 __init__.py 文件,看起來有點(diǎn)奇怪。

第二個問題是 import make 這個動作是有緩存的,只要 Shell 不重啟,make.py 的修改不能及時反饋到交互式命令行里。為此我找到了 hotreload 這個庫:

from hotreload import Loader
make = Loader('make.py')

這樣調(diào)用 make 模塊的函數(shù)就是無緩存的了。而且它沒了 import make 這個動作,也不需要奇奇怪怪的 __init__.py 了。

我認(rèn)為這個過程也適用于其他的開發(fā)過程,只是還沒有這樣的體驗。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容