本系列讨论在Python中使用Tcl脚本,以及如何使用Python对Tcl进行扩展。
==================================================================================================================================================================================================================
Python的文档对Tkinter的介绍,着重于图形界面编程,而对如何使用Tcl语言与Python代码交互,说得并不明确。本文将着重介绍如何在Python中嵌入Tcl。
1. Hello Tcl!
在Python中使用Tcl,不需要安装任何第三方模块。考虑下面一个简单的程序:
import Tkinter
interp = Tkinter.Tcl()
interp.eval('puts "Hello Tcl!"')我们首先利用TKinter.Tcl()得到一个Tcl解释器对象,然后执行它的eval方法,运行一小段Tcl代码。
然而,如果打算Tcl和Python环境有所交互,eval方法就力不从心了。
2.添加命令
利用createcommand方法将一个Python函数作为命令添加到Tcl解释器中。
下面一个例子是创建一个将所有参数数字相加的命令。
import Tkinter
import operator
interp = Tkinter.Tcl()
def SumAll(*args):
return reduce(operator.add,[int(x) for x in args])
interp.createcommand('sum_all',SumAll)
interp.eval("""puts [sum_