2012-04-17 107 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)