我目前有一個python腳本,每隔幾分鐘運行一次,並在目錄樹中的文件中挑選「規則」(在我的例子中是python類)。對於每個類,它可以加載它運行「execute()」,並以這種方式讓我做像監視器日誌文件等有用的東西。有人可以推薦pythonic方法來加載adhoc代碼?
我現在正在重新訪問該腳本以使其自我記錄,並且這讓我感到可能有一種更好的方式來獲取這些特別類;也許是一個框架或好的例子。
任何人都可以提出一個整潔的解決方案?
我目前有一個python腳本,每隔幾分鐘運行一次,並在目錄樹中的文件中挑選「規則」(在我的例子中是python類)。對於每個類,它可以加載它運行「execute()」,並以這種方式讓我做像監視器日誌文件等有用的東西。有人可以推薦pythonic方法來加載adhoc代碼?
我現在正在重新訪問該腳本以使其自我記錄,並且這讓我感到可能有一種更好的方式來獲取這些特別類;也許是一個框架或好的例子。
任何人都可以提出一個整潔的解決方案?
您可以簡單地導入模塊(使用__import__
函數)和reload
他們改變時。
請注意,您仍然有類的現有實例不會自動更改以反映新類定義的問題。
我用importlib
成功。查看:https://github.com/jldupont/jlddk/blob/master/src/jlddk/tools_sys.py
不幸的是只有2.7/3.1我認爲。對不起,我應該說我只限於2.5。 – 2012-04-03 14:21:24
請參閱William E. Hart的[Python Plugin Frameworks](http://wehart.blogspot.co.uk/2009/01/python-plugin-frameworks.html)。 – 2012-04-03 13:08:13