我有一个像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'])])
文件是在以下路径创建的,但文件上没有任何内容。 我有什么明显的遗漏吗?请指导我。
答案 0 :(得分:6)
您需要关闭该文件。让with
为你做。
with open(csvPath, 'w') as f:
writer = csv.writer(f)
for results in sqlResult:
writer.writerow([results['gname'],int(results['Count'])])
答案 1 :(得分:0)
而不是直接写入csv文件写入标准输出并将结果保存到file_name.csv
import csv
import sys
...
...
writer=csv.writer(sys.stdout)
...
然后在csv中获取输出
你可以写这样的命令: -
$ program_name > my_spreadsheet.csv
希望它能帮到你......