我有一个tcl驱动程序脚本,它反过来调用其他几个程序.我想从我的tcl脚本中调用python脚本.让我们说这是我的python脚本"1.py"
#!/usr/bin/python2.4
import os
import sys
try:
fi = open('sample_+_file', 'w')
except IOError:
print 'Can\'t open file for writing.'
sys.exit(0)
Run Code Online (Sandbox Code Playgroud)
和tcl脚本是"1.tcl"
#! /usr/bin/tclsh
proc call_python {} {
exec python 1.py
}
Run Code Online (Sandbox Code Playgroud)
这不会产生任何错误,但同时它不会执行python脚本中的操作.
什么应该替换1.tcl中的代码片段"exec python 1.py"来调用python脚本?可以使用exec调用python脚本吗?
提前致谢!!
Erg*_*wun 15
您的tcl脚本定义了执行python脚本的过程,但不调用该过程.添加对tcl脚本的调用:
#! /usr/bin/tclsh
proc call_python {} {
set output [exec python helloWorld.py]
puts $output
}
call_python
Run Code Online (Sandbox Code Playgroud)
此外,通过启动进程写入stdout的任何内容exec
都不会显示在终端中.你需要从exec调用中捕获它,并且自己打印:
#! /usr/bin/tclsh
proc call_python {} {
set output [exec python helloWorld.py]
puts $output
}
call_python
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10589 次 |
最近记录: |