Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:CSV文件在写入数据后仍然为空_Python - Fatal编程技术网

Python:CSV文件在写入数据后仍然为空

Python:CSV文件在写入数据后仍然为空,python,Python,我有一个来自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 p

我有一个来自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'])])
文件是在以下路径创建的,但文件上没有任何内容。
有什么明显的东西我遗漏了吗。请指导我。

不要直接写入csv文件,而是写入标准输出并将结果保存在文件\u name.csv中

import csv
import sys
...
...

writer=csv.writer(sys.stdout)

...
然后以csv格式获取输出

您可以这样编写命令:-

$ program_name > my_spreadsheet.csv 

希望它能帮助您…

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

import csv
import sys
...
...

writer=csv.writer(sys.stdout)

...
然后以csv格式获取输出

您可以这样编写命令:-

$ program_name > my_spreadsheet.csv 

希望它能帮助您……

您需要关闭该文件。让
一起为你做这件事

with open(csvPath, 'w') as f:
    writer = csv.writer(f)
    for results in sqlResult:
        writer.writerow([results['gname'],int(results['Count'])])

您需要关闭该文件。让
一起为你做这件事

with open(csvPath, 'w') as f:
    writer = csv.writer(f)
    for results in sqlResult:
        writer.writerow([results['gname'],int(results['Count'])])

如何存储对文件句柄的引用,并在以后显式关闭它?@strustmaster感谢您指出这一点。我没有关闭文件。如何存储对文件句柄的引用,然后显式关闭它?@strustmaster感谢您指出。我没有关闭文件。@girijesh我完全可以这样做,但在设置cronjob时,这对我来说是一个痛苦,因为这样我就无法根据当前时间戳自动更改文件名。@saunjean在cronjob中安装此脚本,您可以编写一个shell脚本,您可以在其中使用以下命令:程序名>我的spreadshet
date'+%Y%m%d'
。csvThanks grijesh,但我不想让它复杂化。最好保留一个文件,直到需要它为止。@saunjean是的,saun你是对的,最好保留一个文件。但我给出了替代方案…:)@girijesh我完全可以这样做,但在设置cronjob时,这对我来说将是一个痛苦,因为这样我就无法根据需要更改文件名了自动设置当前时间戳。@要在cronjob中安装此脚本,您可以编写一个shell脚本,在该脚本中可以使用以下命令\u name>my\u spreadshet
date'+%Y%m%d'
。csvThanks grijesh,但我不想让事情复杂化。最好保留一个文件,直到需要时为止。@Saundjean是的,Saund你是对的,最好保留一个文件。但我给出了替代方案…:)