将变量写入CSV行python

Cod*_*der 1 python csv python-2.7

我有一个简单的程序,可以在数据框的for循环内进行一些计算。

该程序在每次迭代后打印5个变量的结果,例如a,b,c,d,e

我只是想在每次循环运行时将这5个值添加到CSV的新行中,但是我不知道该怎么做!我已经尝试过使用基本的csv编写,但是它们总是出现在同一列中,而不是一起出现在同一行中

任何帮助,将不胜感激

    csvRow = [x, ctr, clicks, spend, bidTotal, cpm, cpc]
    csvfile = "data.csv"
    with open(csvfile, "a") as fp:
    wr = csv.writer(fp, dialect='excel')
    wr.writerow(csvRow)
Run Code Online (Sandbox Code Playgroud)

Stu*_*art 5

如果列表正确,您的代码似乎可以正常工作:

import csv
x, ctr, clicks, spend, bidTotal, cpm, cpc = 1, 2, 3, 4, 5, 6, 7
csvRow = [x, ctr, clicks, spend, bidTotal, cpm, cpc]
csvfile = "data.csv"
with open(csvfile, "a") as fp:
    wr = csv.writer(fp, dialect='excel')
    wr.writerow(csvRow)
    wr.writerow(['a', 'b', 'c', 'd', 'e', 'f', 'g'])
Run Code Online (Sandbox Code Playgroud)

open(csvfile, 'r').read() 然后返回:

'1,2,3,4,5,6,7 \ r \ na,b,c,d,e,f,g \ r \ n'

-符合预期。

如果仍然无法使用,请尝试提供一个重现此问题的最小示例。请记住(带有open(... "a")),您将附加到现有文件,因此,如果看起来不正确,则可能是该程序先前版本的遗留问题。