2009-06-06 48 views
12

我在哪裏可以找到PEP 302中描述的「新導入鉤子」的示例實現?PEP 302示例:新導入鉤子

我想用最向前兼容的方式實現自定義查找器和加載器。換句話說,該實現應該可以在Python 2.x和3.x中運行。

回答

4

您可以找到數千個開源示例,用google code search,那就是:

http://www.google.com/codesearch?hl=en&lr=&q="imp.find_module"+"imp.load_module"&sbtn=Search 

編輯:作爲提問澄清他要尋找的示例實現的,不能用,爲尋求更好的URL是:

http://www.google.com/codesearch?hl=en&sa=N&q="path_hooks"++lang:python&ct=rr&cs_r=lang:python 

一個可讀的例子(儘管不適合於生產使用,因爲reddit討論指出!)是urlimport。對於同時支持Python 2和Python 3,這聽起來雄心勃勃 - 我不知道任何現有的聲稱的導入鉤子。在你的鞋子裏,我將開始提供對Python 2.6的全面支持,然後一旦這個工作正常(並且有一個很好的測試電池,並且使用-3開關來窺視),我會輸入2to3來源並查看是否有任何事件(如果是這樣,找出原因,修復2.6源代碼,迭代)。

+0

這是好東西,但我沒有找到一個使用imp.load_module的例子。我想實現一個自定義查找器和加載器。 – brad 2009-06-07 00:04:52