2012-01-19 32 views
5

假設我有一個包含Python雞蛋的二進制字符串,全部壓縮。有沒有辦法從內存中執行並「導入」該egg,而不會將其寫入磁盤?有沒有辦法從內存中導入一個Python蛋,但不是磁盤?

+0

可能重複的[Python,Python模塊導入字符串的Python代碼](http://stackoverflow.com/questions/3614537/python-import-string-of-python-code- as-module) –

回答

-1

我不熟悉Python蛋,但嘗試使用StringIO對象。因爲Python使用duck typing,所以如果你不調用任何文件特定的方法,你可以把它看作一個文件。

2

雞蛋簡單地壓縮下另一個名稱,以便他們使用zipimport.zipimporter進口這(不幸)是用C寫的

模塊

我的文件覺得你的選擇是:

  1. 改寫修改zipimporter接受file狀物體 而不是文件名
  2. 在Python
  3. 重新實現zipimporter然後 修改接受file狀物體
  4. 或寫一個臨時文件 磁盤,導入,然後刪除該文件。

最後這些可能是最簡單的。

+0

寫入不幸的是,桌子不是一種選擇。我認爲重新實現它可能是一個選擇。 –

相關問題