2011-09-09 473 views
4

我希望能夠從我的python腳本中運行一個tcl腳本。具體來說,我想運行一個類似於this的tcl腳本。從Python運行TCL代碼

我有一些Python的知識和tcl的。

我一直在嘗試喜歡的東西:

import Tkinter 
r=Tkinter.Tk() 
r.call('source{DIS.tcl})' or r.tk.eval('source{DIS.tcl})' 

任何想法如何,我將訪問的事從TCL腳本?謝謝!

+3

這個問題的答案可能會有所幫助。 http://stackoverflow.com/questions/1004434/know-any-creative-ways-to-interface-python-with-tcl –

+0

定義「訪問事物」 – kostix

+0

通過「訪問」我只是表示我想輸出的TCL碼。我嘗試了其他鏈接上的東西,但似乎沒有任何工作。再說一遍,我對Python非常陌生,只是想了解Python是如何執行TCL腳本的。例如,我不明白「r.call('source {DIS.tcl})」應該做什麼。 – mcfly

回答

2

Tcl對空白非常敏感(很像Bourne shell)。你可能想source DIS.tcl而不是source{DIS.tcl}

+0

'source {DIS.tcl}'也可以,只要空間在那裏。 –

+0

爲了澄清,在這種情況下引用字符「{}」是完全多餘的; TCL希望命令由空格分隔的單詞組成。 'DIS.tcl'不包含空格或其他tcl特殊字符,所以它不需要引用,但它*必須由前導proc名稱中的空格分隔。 – SingleNegationElimination