2015-06-20 123 views
0

rubyload()函數在當前文件中加載和整個ruby文件並運行它。
負載可以得到任何字符串路徑:相對,靜態,...
什麼在等效函數做到這一點在python 3
python等效函數嗎?
謝謝。python中的等效ruby加載函數

回答

4

Python的execfile() function類似,因爲它會加載和執行文件每次,不像導入的模塊。

wrap參數紅寶石load功能可以通過傳遞一個新的命名空間來模擬:

namespace = {} 
execfile(filename, namespace) 
+0

感謝。這與 有什麼區別'loader = importlib.machinery.SourceFileLoader(「a」,「/home/a.py」) loader.load_module()' – somename

+1

@unkhown:'importlib'返回一個新的模塊對象,'' execfile()'不會(它使用當前全局變量或映射作爲名稱空間傳入)。 –

+0

我該如何防止模塊重新加載?導入做這個automaticaly我認爲。當使用importlib或execfile()。 – somename