2012-04-17 191 views
2

我有一個使命來sqlite3的數據轉換成JSON格式和CSV格式,我可以讀這樣的數據(換行補充):如何sqlite3的數據轉換成JSON格式和CSV格式

(2966, 
u'http://buy.xineurope.com/thread-394248-1-1.html', 
u'\u6d77\u666f\u623f\u627e\u4eba\u5408\u79df - \u623f\u5c4b\u4fe1\u606f - \u8df3\u86a4\u5e02\u573a - \u65b0\u6b27\u6d32-XinEurope-\u534e\u4eba\u4fe1\u606f\u5a31\u4e50\u4e92\u52a8\u95e8\u6237 - Powered by Discuz!', 
1, 0, 12979085330693664L, 0, 0) 

是有一些工具或模塊(import json?)可以幫助我轉移,最重要的是關於json和CSV的格式是什麼,你可以舉個例子使用上面的數據嗎?

就像我創建一個dict {'a':爸爸,'b':dada},但以json格式?

+1

我敢肯定你的意思是CSV(逗號分隔值),而不是CVS(版本控制系統)。 – 2012-04-17 23:27:51

回答

2

要轉換爲json,無論是一排或cursor.fetchall()

import json 

json_data = json.dumps(data) 

或使用json.dump(some_file_object, data)如果你想將它保存到一個文件中。

要轉換爲csv

import csv 

writer = csv.writer(some_file_object) 

for row in cursor: 
    # the csv module can't handle unicode, so encode the strings 
    row = [item.encode('utf-8') if isinstance(item, basestring) else item 
                   for item in data] 
    writer.writerow(row)