Python 2.6:从Windows控制台应用程序读取数据.(使用os.system?)

Jer*_*emy 4 python windows console exe

我有一个Windows控制台应用程序,返回一些文本.我想在Python脚本中阅读该文本.我尝试使用os.system读取它,但它无法正常工作.

import os
foo = os.system('test.exe')
Run Code Online (Sandbox Code Playgroud)

假设test.exe返回"bar",我希望变量foo设置为"bar".但是会发生什么,它在控制台上打印"bar",变量foo设置为0.

我需要做什么才能获得我想要的行为?

YOU*_*YOU 8

请使用子进程

import subprocess
foo = subprocess.Popen('test.exe',stdout=subprocess.PIPE,stderr=subprocess.PIPE)
Run Code Online (Sandbox Code Playgroud)

http://docs.python.org/library/subprocess.html#module-subprocess

  • 这有效.为了得到文本,我这样做:result = foo.stdout.readlines()和'result'有我想要的文本. (2认同)