2010-02-19 270 views
3

我正在從python導出數據與csv庫,它工作得很好。在網絡搜索後,我找不到有關如何使用python格式化導出數據的任何信息。python csv - 導出數據和格式顏色,文本格式等

例如。我這樣在p​​ython中導出一個csv行。

for hour_record in object_list: 
      row = list() 
      for field in fields: 
       try: 
        row.append(getattr(hour_record, field)) 
       except: 
        pass 
      writer.writerow(row) 

現在我想知道如何將一些格式化信息傳遞給row.append調用。例如,如果我想格式化文本紅色,並確保它被格式化爲數字等。

任何人的想法這是如何工作的?

回答

2

CSV僅用於純文本。如果您希望包含格式化信息,則必須嵌入HTML片段,或者必須將這些屬性添加爲單獨的字段。任一選項都會要求理解所述格式化機制的消費者。

+0

好的謝謝。如果我確定了你的話,如果我想添加格式化信息,我應該使用另一個庫進行導出。例如一個.xls庫。你能推薦一個用於導出數據的excel庫嗎? – 2010-02-19 11:08:12

+1

有人提到'xlwt'有好的結果,儘管我從來沒有機會自己使用它。 – 2010-02-19 11:12:15

+0

謝謝,我會試一試。 – 2010-02-19 11:19:36

0

相反CSV的,你應該使用numpy.genfromtxt和numpy.savetxt:

>>> data = numpy.genfromtxt('mydata.txt', dtype=None) 
>>> <-> work with the data recarray object 
>>> numpy.savetxt('results.txt', data) 

如果你看看幫助(numpy.savetxt),你可以看到有一個「格式化」選項,允許您指定輸出格式。

要輸出顏色,您必須在另一個答案中使用HTML,或者您可以使用僅用於輸出到STDOUT的模塊terminalcolor