2012-01-31 56 views
1

我試圖讓兩個方面制定了:如何在運行時運行動態python腳本?

  1. 首先我如何運行存儲在DB python腳本爲(可能使用PyPy沙箱)在沙盒模式下的BLOB?
  2. 其次,我怎樣才能從代碼模板(代碼模板被保存爲數據庫中的BLOB)生成腳本本身,併爲其提供所需的數據?

對此的任何幫助將是偉大的。謝謝。

回答

0
  1. 您可以使用eval()。但要小心安全漏洞!
  2. 請張貼您的臨時代碼。
+0

糾正我,如果我錯了,但你不能將腳本傳遞給eval()函數。相反,execfile()會但不會導入。我已經通過這個[**鏈接**](http://stackoverflow.com/questions/4037913/add-a-python-script-at-runtime),但在這裏它取自一個URL而不是一個BLOB。 – 2012-01-31 08:56:57

0
compile(source, filename, mode[, flags[, dont_inherit]]) 

編譯源成代碼或AST對象。代碼對象可以由exec語句執行,也可以通過調用eval()進行評估。源可以是字符串或AST對象。有關如何使用AST對象的信息,請參閱ast模塊文檔。

+0

@syntesizerpatel謝謝,將調查它。 – 2012-01-31 09:14:21