2010-01-14 33 views
0

我需要從我的python腳本執行代碼並執行解釋器樣式的輸出,如here從腳本執行python代碼並獲得解釋器樣式輸出

我使用django在GAE上創建網站,它必須運行用戶輸入的代碼並以文本的形式輸出解釋器樣式的輸出。

+2

是否有你有一個具體的問題你需要幫助嗎? – 2010-01-14 14:01:49

+0

你在做什麼環境?從命令行執行'python script> log'。你正在編寫一個桌面應用程序,比如IDLE嗎?你正在創建一個運行Python代碼的網站嗎?你在說什麼? – 2010-01-14 14:13:05

+0

我使用django在GAE上創建網站,它必須運行動​​態代碼並打印解釋器樣式的輸出。如果我有一個字符串形式的代碼,我怎樣才能進行解釋式輸出? – 2010-01-14 14:18:36

回答

1

code.InteractiveInterpreter可用的,但我認爲你可以採取一個靈感在下面簡單的例子:

import code 

exprs = [ 
    'd = {}', 
    'd', 
    'd["x"] = 1', 
    'd', 
    ] 

for e in exprs: 
    print '>>> %s' % e 
    cmd = code.compile_command(e) 
    r = eval(cmd) 
    if r: 
     print repr(r) 

產生以下的輸出:

>>> d = {} 
>>> d 
{} 
>>> d["x"] = 1 
>>> d 
{'x': 1} 
0

有一個開源的應用程序引擎控制檯,可以做你想做的事(如果我正確地理解了這個問題)。看看它:http://con.appspot.com/console/

說明將其與您的應用程序集成的說明here

相關問題