1

我有一个来自 mysql 的元组结果,如下所示:

sqlResult=({'Count': 1L, 'gname': 'Anron may'}, {'Count': 1L, 'gname': 'Anchy de'}, {'Count': 1L, 'gname': 'abby ras'}, {'Count': 2L, 'gname': 'Akki nome'}, {'Count': 41L, 'gname': 'Archenemy'}, {'Count': 1L, 'gname': 'Antony papa'}, {'Count': 1L, 'gname': 'Dead zombie'})

我正在尝试将这些数据保存到这样的 CSV 文件中

import time
csvName="Gnames-and-count-"+str(int(time.time()))
csvPath="/home/sean/Desktop/"+str(csvName)+str(".csv")
writer = csv.writer(open(csvPath, 'wt'))
for results in sqlResult:
    writer.writerow([results['gname'],int(results['Count'])])

该文件是在以下路径中创建的,但文件上没有任何内容。我有什么明显的遗漏吗?.请指导我。

4

2 回答 2

6

您需要关闭该文件。让with你为你做。

with open(csvPath, 'w') as f:
    writer = csv.writer(f)
    for results in sqlResult:
        writer.writerow([results['gname'],int(results['Count'])])
于 2012-08-27T07:48:40.790 回答
0

而不是直接写入 csv 文件写入标准输出并将结果保存在 file_name.csv

import csv
import sys
...
...

writer=csv.writer(sys.stdout)

...

然后在 csv 中获取输出

你可以这样写命令:-

$ program_name > my_spreadsheet.csv 

希望它会帮助你...

于 2012-08-27T07:43:30.117 回答