2013-04-23 54 views
2

我有一個控制檯輸出,其中有strings.for EX-寫作控制檯輸出(空格分隔文本)使用Python

大家好

分離的空間多行單獨的Excel工作表中的列你好所有

歡迎到Python

我想他們撰寫到Excel的單獨行,每串到單獨的文件中合作ex-

 A1  A2   A3 
B1 Hi  everyone 
B2 Hello to   all 
B3 Welcome to   python 

我們在python的xlwt包中是否有任何(text to columns)實用程序?

UPDATE 我已經得到了這些打印語句一個exe,輸出所有在once.I只是執行該exe文件,並獲得console.I印刷品想從控制檯讀取和寫入Excel工作表像我已經在上面解釋了。下面是代碼:

#!/usr/bin/env python 
import subprocess 
import xlwt 
process=subprocess.Popen('Test_Project.exe',stdout=subprocess.PIPE) 
wb=xlwt.Workbook() 
sheet=wb.add_sheet('python') 
for rows in range(10): #let say 10 rows and columns we have 
    for cols in range(10): 
     out = process.stdout.readline() 
     sheet.write(rows,cols,out) 
     print out 
wb.save('stdoutput.xls') 
+0

如何前進程完成[標籤:openpyxl]? – David 2013-04-23 12:40:02

+0

你如何得到輸出?請顯示你的代碼,這是用戶輸入嗎?這是從文件中讀取的嗎?這是否在一次或全部一次給你1條線? – 2013-04-23 12:41:23

+0

我已更新我的問題。我對Python和xlwt也很新穎。任何幫助都會很感激..謝謝 – Minion 2013-04-24 04:41:04

回答

1

假設你要開始處理。第輸出

#!/usr/bin/env python 
import subprocess 
import xlwt 
process=subprocess.Popen('Test_Project.exe',stdout=subprocess.PIPE) 
out,err = process.communicate() 
wb=xlwt.Workbook() 
sheet=wb.add_sheet('python') 
row = 0 
for line in out.split('\n'): 
    for i,wrd in enumerate(line.split()):  
     sheet.write(row,i,wrd) 
    row=row+1 
wb.save('stdoutput.xls') 
+0

非常感謝! :) – Minion 2013-04-24 09:47:47

3

只要將它寫爲.csv。

假設你有row這是一個空格分隔的字符串:

outfile.write(','.join(row.split()) 
+0

我們通過運行可執行文件來獲取控制檯上的一些數據。我必須將這些數據保存在Excel表格中作爲日誌。請告訴我該在哪裏做。因爲我沒有得到如何在運行時將數據保存在csv中。謝謝@lost – Minion 2013-04-24 09:20:33