[问题]急,求助!!!
发表于 : 2008-01-23 15:48
我这里有个简单的测试Python脚本。目的是希望用Python脚本给另外一个进程输入数据。其中的testpython.exe是一个简单的程序,用户输入什么字符就回显到屏幕上。我本来希望这个testpython的程序能收到6个字符‘3’,但是结果是一个都没收到。
求高人帮忙看看是什么问题,谢谢。
#!/bin/env python
import time, subprocess
proc = subprocess.Popen("/cygdrive/c/Source/testpython.exe", shell=False, bufsize=0, stdin=subprocess.PIPE, close_fds=True)
time.sleep(2)
print proc
print proc.stdin
print "3"
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
time.sleep(3)
求高人帮忙看看是什么问题,谢谢。
#!/bin/env python
import time, subprocess
proc = subprocess.Popen("/cygdrive/c/Source/testpython.exe", shell=False, bufsize=0, stdin=subprocess.PIPE, close_fds=True)
time.sleep(2)
print proc
print proc.stdin
print "3"
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
proc.stdin.write("3\n")
proc.stdin.flush()
time.sleep(3)