我使用Python 3來模擬另一個工具提供的Python腳本接口。 (在編寫此工具腳本時,您將運行Python腳本,它可以執行import mytool
來訪問腳本API。)如何執行一個文件並在Python 3中提供hooked導入?
我已經實現了此工具公開的接口,並且希望編寫一個您要調用的加載器如:
python run_mytool_script.py dump_menu_items.py
該加載程序將允許您與該工具的某些功能進行交互,而無需實際安裝該工具。理想情況下,這應該允許我運行爲該工具設計的現有腳本,而無需進行修改。
在run_mytool_script.py
我想到:
- 初始化仿真腳本接口
- 準備進口鉤
exec
腳本dump_menu_items.py
不過,我不能完全弄清楚如何創建導入鉤子。我如何安裝一個鉤子,以便我的仿真腳本界面在腳本import mytool
之後暴露爲mytool
?
請注意,模擬腳本接口必須在運行時初始化,因此安裝名爲mytool
的程序包並不能解決問題。
哦,太棒了!我沒有意識到創建模塊對象非常容易。話雖如此,我會考慮您的建議來創建合適的模塊,因爲它聽起來像一個更簡單的解決方案。謝謝! –