2011-04-05 72 views
0

我有一個腳本不斷向頁面傾倒一些值。我們可以稱之爲腳本1在python中處理標準輸出

我需要將轉儲到屏幕的值由另一個python腳本處理。我們稱之爲腳本2。我SCRIPT1情難自禁

我目前使用蟒蛇2.2所以這將是巨大的,如果有人可以提供一個例子,而不使用子

腳本1看起來是這樣的

import sys 
import os 
i = 0 
while 1: 
    print i 
    sys.stdout.write(str(i)+"\n") 
     i = i + 1 

我需要寫腳本2,以便腳本1生成的每個輸出都由腳本2處理

- 編輯 -

我需要它在傳統的實現即沒有電源外殼在Windows XP

+2

你在使用什麼操作系統? – GWW 2011-04-05 14:41:13

+0

windows xp .. :( – Anuj 2011-04-05 17:08:21

回答

2

我想你想通過線處理線運行可用只是命令提示符:

# script2.py 
import sys 

for line in sys.stdin: 
    print line # do something here with line 

[編輯]最後, ,你只需管他們:

python script1.py | python script2.py 
7

我不打算在這裏說代碼設計的任何東西,因爲我真的不知道你在做什麼。

但script2.py:

import sys 
for line in sys.stdin: 
    print "From stdin:", line 

然後運行(至少在Unix/Linux,如果你使用的是Windows,谷歌 「管道在PowerShell中」):

python script1.py | python script2.py 

或者你是否想在一個python腳本中完成它?您可以通過將其替換爲具有所有必要方法的類(write等)來重新輸入sys.stdout

相關問題