問題:如何系統地探測解釋器隨時涉及的文件(如在調試模式下)。我如何系統地確定Python在其可訪問的包/模塊樹中的依賴關係?
當一切都失敗時,我會收到錯誤消息。我所要求的是相反的:一切都有效,但我不知道我有多少多餘的垃圾,儘管我可以想象像pynotify這樣的東西可能可以追蹤它。
語境:
我花了整個上午都在行使審判&錯誤要獲得軟件包的工作。我確定我已經將相關的python軟件包複製到至少3個目錄中,並用垃圾將我的windows setx -m path
弄糟。現在我想知道如何在沒有任何依賴的情況下清理它,並且實際上從過程中學習。
我不可能是唯一一個想知道這件事的人。一些有才華的測試,開發人員必須編寫了一個腳本/包:
import everything from everywhere
check for all dependencies
E = list(errorMessages)
L = list_of_stuff_that_was_used
print L
print E
所以,如果我有東西存放這是不是在L
,我可以將其刪除。但是,當然探測必須徹底,以消耗所有可訪問的文件(或至少積極使用的目錄)。
問題是什麼不是約: 我對sys.path
什麼是不感興趣。這是微不足道的。
更多的上下文:
我從The Hitchhikers Guide to Packaging這個問題的未來被不客氣知道,但它不探討了過去。因此,從Python 2xx到3xx的轉換,這個問題必須變得越來越相關?
Thanks Martijn;我認爲引導虛擬環境到一個臨時目錄監控與pynotify可以做的伎倆(?),但如果你認爲這條路線註定要失敗,那麼我甚至不會嘗試。 – 2013-03-09 11:33:53
@BHM:任何pip-installable包都會聲明它的依賴關係,所以只需使用'pkg_resources'和朋友即可。任何你需要手動安裝的東西,好吧,你已經知道它是依賴關係了,不是嗎? :-) – 2013-03-09 11:52:40
明白了:-)謝謝。 – 2013-03-09 12:09:55